首页 > php教程 > php手册 > 正文

php中的namespace 命名空间

php中文网
发布: 2016-10-22 00:00:09
原创
1392人浏览过

名字解释:

 namespace(命名空间),命名空间是从php5.3开始支持的功能。作用主要有两个:1.可以避免类名取得过长。2.当在多个框架配合使用时,同名的类之间不会冲突。

命名空间,看名字就知道,目的就是为了命名的,不然咋不叫QQ空间 盗梦空间 七度空间。额 好像有奇怪的掺进来了。


 

下面是示例代码:

立即学习PHP免费学习笔记(深入)”;

<span style="color: #008080"> 1</span> <span style="color: #008000">//</span><span style="color: #008000">在test1.php 中有一个类 叫做Person,它放在一个叫shop的namespace里。</span>
<span style="color: #008080"> 2</span> <?<span style="color: #000000">php
</span><span style="color: #008080"> 3</span> <span style="color: #000000">    namespace shop;//这个声明要放在php文件的最上面。就算是header也要让路。
</span><span style="color: #008080"> 4</span> 
<span style="color: #008080"> 5</span>     <span style="color: #008080">header</span>('content-type:text/html;charset=utf-8'<span style="color: #000000">);
</span><span style="color: #008080"> 6</span> 
<span style="color: #008080"> 7</span>     <span style="color: #0000ff">class</span><span style="color: #000000"> Person {
</span><span style="color: #008080"> 8</span>       <span style="color: #0000ff">public</span> <span style="color: #800080">$name</span> = 'Leonard'<span style="color: #000000">;
</span><span style="color: #008080"> 9</span> <span style="color: #000000">    }
</span><span style="color: #008080">10</span> ?>
<span style="color: #008080">11</span> <span style="color: #008000">//</span><span style="color: #008000">在同级目录的test2.php中也有一个叫Person的类,它放在一个叫admin的namespace中</span>
<span style="color: #008080">12</span> <?<span style="color: #000000">php
</span><span style="color: #008080">13</span> 
<span style="color: #008080">14</span> <span style="color: #000000">    namespace admin;//上面可以有空白行。别的都不行
</span><span style="color: #008080">15</span> 
<span style="color: #008080">16</span>     <span style="color: #0000ff">include_once</span>('./test.php'<span style="color: #000000">);
</span><span style="color: #008080">17</span> 
<span style="color: #008080">18</span>     <span style="color: #0000ff">use</span> shop <span style="color: #0000ff">as</span><span style="color: #000000"> s;//这里就引用了这个shop命名空间。要使用test1.php中的类就必须写上这行。as的作用是简写命名空间的名字。
</span><span style="color: #008080">19</span> 
<span style="color: #008080">20</span>     <span style="color: #0000ff">class</span><span style="color: #000000"> Person {
</span><span style="color: #008080">21</span>       <span style="color: #0000ff">public</span> <span style="color: #800080">$name</span> = 'Sheldon'<span style="color: #000000">;
</span><span style="color: #008080">22</span> <span style="color: #000000">    }
</span><span style="color: #008080">23</span> 
<span style="color: #008080">24</span>     <span style="color: #800080">$p1</span> = <span style="color: #0000ff">new</span><span style="color: #000000"> s\Person();//上面用了as简写,s指代命名空间shop。没有用as的话就用 new shop\Person()来实例化对象。
</span><span style="color: #008080">25</span>     <span style="color: #0000ff">echo</span> <span style="color: #800080">$p1</span>->name;<span style="color: #008000">//</span><span style="color: #008000">Leonard</span>
<span style="color: #008080">26</span> 
<span style="color: #008080">27</span>     <span style="color: #800080">$p2</span> = <span style="color: #0000ff">new</span><span style="color: #000000"> Person();//不写命名空间时,就近在自己的命名空间里找Person类,找不到就报错咯。
</span><span style="color: #008080">28</span>     <span style="color: #0000ff">echo</span> <span style="color: #800080">$p2</span>->name;<span style="color: #008000">//</span><span style="color: #008000">Sheldon<br></span>
登录后复制

 

PHP速学教程(入门到精通)
PHP速学教程(入门到精通)

PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号