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 相关文章推荐
Access数据库导入Mysql的方法之一
Oct 09 PHP
PHP图像处理之使用imagecolorallocate()函数设置颜色例子
Nov 19 PHP
php计算函数执行时间的方法
Mar 20 PHP
PHP实现批量上传单个文件
Dec 29 PHP
PHP错误处理函数
Apr 03 PHP
php阳历转农历优化版
Aug 08 PHP
php opendir()列出目录下所有文件的实例代码
Oct 02 PHP
php版阿里云OSS图片上传类详解
Dec 01 PHP
php实现水印文字和缩略图的方法示例
Dec 29 PHP
php 静态属性和静态方法区别详解
Apr 09 PHP
php利用云片网实现短信验证码功能的示例代码
Nov 18 PHP
Laravel框架路由和控制器的绑定操作方法
Jun 12 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
PHP4和PHP5性能测试和对比 测试代码与环境
2007/08/17 PHP
解析php二分法查找数组是否包含某一元素
2013/05/23 PHP
php序列化函数serialize() 和 unserialize() 与原生函数对比
2015/05/08 PHP
php判断对象是派生自哪个类的方法
2015/06/20 PHP
php技巧小结【推荐】
2017/01/19 PHP
thinkPHP5.0框架自动加载机制分析
2017/03/18 PHP
encode脚本和normal脚本混用的问题与解决方法
2007/03/08 Javascript
node.js中的fs.fstatSync方法使用说明
2014/12/15 Javascript
分享一个常用的javascript静态类
2014/12/31 Javascript
原生js结合html5制作小飞龙的简易跳球
2015/03/30 Javascript
微信开发 JS-SDK 6.0.2 经常遇到问题总结
2016/12/08 Javascript
js+html5实现侧滑页面效果
2017/07/15 Javascript
微信小程序时间选择插件使用详解
2018/12/28 Javascript
为什么要使用Vuex的介绍
2019/01/19 Javascript
js 计算图片内点个数的示例代码
2019/04/04 Javascript
vue-router路由模式详解(小结)
2019/08/26 Javascript
JS多个异步请求 按顺序执行next实现解析
2019/09/16 Javascript
Vue实现计算器计算效果
2020/08/17 Javascript
Python 登录网站详解及实例
2017/04/11 Python
python 读取摄像头数据并保存的实例
2018/08/03 Python
Windows 64位下python3安装nltk模块
2018/09/19 Python
python 读取yaml文件的两种方法(在unittest中使用)
2020/12/01 Python
谷歌浏览器小字体处理方案即12px以下字体
2013/12/17 HTML / CSS
Juicy Couture Beauty官方网站:香水和化妆品
2019/03/12 全球购物
Maisons du Monde德国:法国家具和装饰的市场领导者
2019/07/26 全球购物
英国专业美容产品在线:Mylee(从指甲到脱毛)
2020/07/06 全球购物
会计专业自我鉴定范文
2013/10/06 职场文书
护理自荐信
2013/10/22 职场文书
数字化校园建设方案
2014/05/03 职场文书
活动总结的格式
2014/05/07 职场文书
教师职业道德事迹材料
2014/08/18 职场文书
2015年计生工作总结范文
2015/04/24 职场文书
导游词之太湖
2019/10/08 职场文书
SQL实现LeetCode(175.联合两表)
2021/08/04 MySQL
python 详解turtle画爱心代码
2022/02/15 Python
python的列表生成式,生成器和generator对象你了解吗
2022/03/16 Python