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 相关文章推荐
Mysql的GROUP_CONCAT()函数使用方法
Mar 28 PHP
php foreach 使用&(与运算符)引用赋值要注意的问题
Feb 16 PHP
php注销代码(session注销)
May 31 PHP
使用php检测用户当前使用的浏览器是否为IE浏览器
Dec 03 PHP
从PHP的源码中深入了解stdClass类
Apr 18 PHP
PHP常量使用的几个需要注意的地方(谨慎使用PHP中的常量)
Sep 12 PHP
ThinkPHP分组下自定义标签库实例
Nov 01 PHP
PHP批量生成图片缩略图的方法
Jun 18 PHP
详解PHP的Yii框架中扩展的安装与使用
Apr 01 PHP
php中的explode()函数实例介绍
Jan 18 PHP
laravel框架创建授权策略实例分析
Nov 22 PHP
laravel实现图片上传预览,及编辑时可更换图片,并实时变化的例子
Nov 14 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中3种方法统计字符串中每种字符的个数并排序
2012/08/27 PHP
php实现图形显示Ip地址的代码及注释
2014/01/20 PHP
JS 继承实例分析
2008/11/04 Javascript
js 页面输出值
2008/11/30 Javascript
jQuery select的操作实现代码
2009/05/06 Javascript
『jQuery』.html(),.text()和.val()的概述及使用
2013/04/22 Javascript
jquery操作复选框(checkbox)的12个小技巧总结
2014/02/04 Javascript
JavaScript实现班级随机点名小应用需求的具体分析
2014/05/12 Javascript
JS代码实现table数据分页效果
2016/05/26 Javascript
vue使用stompjs实现mqtt消息推送通知
2017/06/22 Javascript
JavaScript的setter与getter方法
2017/11/29 Javascript
微信小程序仿美团城市选择
2018/06/06 Javascript
微信小程序实现下拉菜单切换效果
2020/03/30 Javascript
Vue项目部署的实现(阿里云+Nginx代理+PM2)
2019/03/26 Javascript
angula中使用iframe点击后不执行变更检测的问题
2020/05/10 Javascript
JS如何实现手机端输入验证码效果
2020/05/13 Javascript
使用vue实现通过变量动态拼接url
2020/07/22 Javascript
分析Python的Django框架的运行方式及处理流程
2015/04/08 Python
python 网络爬虫初级实现代码
2016/02/27 Python
python抓取文件夹的所有文件
2018/02/27 Python
在python中利用GDAL对tif文件进行读写的方法
2018/11/29 Python
Python常用模块之requests模块用法分析
2019/05/15 Python
CSS3制作苹果风格键盘特效
2015/02/26 HTML / CSS
css3 实现圆形旋转倒计时
2018/02/24 HTML / CSS
用canvas实现图片滤镜效果附演示
2013/11/05 HTML / CSS
携程旅行网:中国领先的在线旅行服务公司
2017/02/17 全球购物
iHerb俄罗斯:维生素、补品和天然产品
2020/07/09 全球购物
JAVA和C++的区别
2013/10/06 面试题
老干部工作先进事迹
2014/08/17 职场文书
2015年效能监察工作总结
2015/04/23 职场文书
开场白怎么写
2015/06/01 职场文书
电子表的操作介绍说明书
2019/10/28 职场文书
Python jiaba库的使用详解
2021/11/23 Python
把77A收信机改造成收音机
2022/04/05 无线电
Nginx HTTP跳转至HTTPS
2022/05/15 Servers
Win11右下角图标点了没反应怎么办?Win11点击右下角图标无反应解决方法汇总
2022/07/07 数码科技