php中namespace及use用法分析


Posted in PHP onDecember 06, 2016

本文实例讲述了php中namespace及use用法。分享给大家供大家参考,具体如下:

namespace(以下简称ns)。在定义了一个ns之后,下面所申明的class、interface、const(不包含variable)都是在申明的ns这个“域”里面的。当引用一个申明了ns的包含文件,想要调用这个ns里面的东西,那必须调整当前脚本也到此ns域,否则就得用全称()包含ns全称):

// inc.php
namespace Foo;
class Bar {}
// 访问Foo的第一种方法,用全称
require 'inc.php';
$foo = new \Foo\Bar();
// 访问Foo的第二种方法
namespace Foo; // 调整当前脚本到Foo这个ns域,而且namespace申明必须在第一句
require 'inc.php';
$foo = new Bar();

use关键字目的是使用ns的别名:

// 比如
use A\Very\Long\Namespace as Ns;
// 这样就可以用Ns来代替A/Very/Long/Namespace这个ns下定义的东西
$foo = new Ns\Foo();

但是在一些开源项目里面经常会看到use Ns\Component这样的用法,没有用as,这让我以前一直在思考use是否还有第二种用法,糟糕的是php的文档里面也没有对此用法有描述,只能靠猜测,后来仔细想过这个问题,得出一个比较靠谱的结论是use可以省略as以及后面的别名而直接把ns最后一个节点的名字当作别名,感觉是不是很像ln -s命令的用法呢:

// 第三种用法
require 'inc.php';
use Foo\Bar; // 这样Bar就等于Foo\Bar了
$foo = new Bar();

希望本文所述对大家PHP程序设计有所帮助。

PHP 相关文章推荐
第二节 对象模型 [2]
Oct 09 PHP
玩转虚拟域名◎+ .
Oct 09 PHP
一个PHP的ZIP压缩类分享
May 04 PHP
PHP中Http协议post请求参数
Nov 02 PHP
Yii2中关联查询简单用法示例
Aug 10 PHP
详解PHP数据压缩、加解密(pack, unpack)
Dec 17 PHP
php+mysql+jquery实现日历签到功能
Feb 27 PHP
ThinkPHP5+Layui实现图片上传加预览功能
Aug 17 PHP
PHP 获取客户端 IP 地址的方法实例代码
Nov 11 PHP
php json转换相关知识(小结)
Dec 21 PHP
浅谈Laravel中的三种中间件的作用
Oct 13 PHP
php实现将数组或对象写入到文件的方法小结【三种方法】
Apr 22 PHP
PHP实现的统计数据功能详解
Dec 06 #PHP
php+ajax简单实现全选删除的方法
Dec 06 #PHP
thinkPHP数据库增删改查操作方法实例详解
Dec 06 #PHP
thinkPHP中volist标签用法示例
Dec 06 #PHP
探究Laravel使用env函数读取环境变量为null的问题
Dec 06 #PHP
thinkphp中AJAX返回ajaxReturn()方法分析
Dec 06 #PHP
php中引用符号(&)的使用详细介绍
Dec 06 #PHP
You might like
PHP新手上路(四)
2006/10/09 PHP
PHP中常用的输出函数总结
2014/09/22 PHP
php curl 上传文件代码实例
2015/04/27 PHP
?牟┛途W扣了一??效果出?? target=
2007/05/27 Javascript
jquery $(document).ready() 与window.onload的区别
2009/12/28 Javascript
用jquery存取照片的具体实现方法
2013/06/30 Javascript
javascript 闭包详解
2015/07/02 Javascript
jquery+css实现的红色线条横向二级菜单效果
2015/08/22 Javascript
jQuery实现自动切换播放的经典滑动门效果
2015/09/12 Javascript
简单实现限制uploadify上传个数
2015/11/16 Javascript
jQuery mobile 移动web(6)
2015/12/20 Javascript
JS中sort函数排序用法实例分析
2016/06/16 Javascript
Express URL跳转(重定向)的实现方法
2017/04/07 Javascript
微信小程序实现点击按钮修改字体颜色功能【附demo源码下载】
2017/12/05 Javascript
js replace 全局替换的操作方法
2018/06/12 Javascript
微信小程序解除10个请求并发限制
2018/12/18 Javascript
如何使用less实现随机下雪动画详解
2019/01/02 Javascript
vue中使用WX-JSSDK的两种方法(推荐)
2020/01/18 Javascript
vue中是怎样监听数组变化的
2020/10/24 Javascript
Vue 防止短时间内连续点击后多次触发请求的操作
2020/11/11 Javascript
Python字符串处理之count()方法的使用
2015/05/18 Python
详解从Django Rest Framework响应中删除空字段
2019/01/11 Python
python中对数据进行各种排序的方法
2019/07/02 Python
python读取指定字节长度的文本方法
2019/08/27 Python
python创建学生成绩管理系统
2019/11/22 Python
python绘制彩虹图
2019/12/16 Python
AE美国鹰美国官方网站:American Eagle Outfitters
2016/08/22 全球购物
美国时装品牌:Nautica(诺帝卡)
2016/08/28 全球购物
Desigual美国官方网站:西班牙服装品牌
2019/03/29 全球购物
小学生红领巾广播稿
2014/01/21 职场文书
安全大检查实施方案
2014/02/22 职场文书
生日宴会主持词
2014/03/20 职场文书
2015年秋季校长开学典礼致辞
2015/07/29 职场文书
2015年村级财务管理制度
2015/08/04 职场文书
2019年工作总结范文
2019/05/21 职场文书
pytorch 如何使用batch训练lstm网络
2021/05/28 Python