75142913在线留言
PHP命名空间(namespace)及use关键字使用详解_PHP技术_网络人

PHP命名空间(namespace)及use关键字使用详解

Kwok 发表于:2022-05-13 10:13:29 点击:60 评论: 0

php >= 5.3 引入了命名空间(namespace),其主要为了解决代码与PHP内部的类/函数/常量或第三方类/函数/常量之间的名字冲突。与减短调用时的类名称,以提高源代码的可读性。

一、命名空间的使用

<?php
namespace foo;
use My\Full\Classname as Another;
$obj = new namespace\Another; // 实例化 foo\Another 对象

// 下面的例子与 use My\Full\NSname as NSname 相同
use My\Full\NSname;
$obj = new Another; // 实例化 My\Full\Classname 对象

// 导入一个全局类
use ArrayObject;
$a = new ArrayObject(array(1)); // 实例化 ArrayObject 对象

// 导入函数
use function My\Full\functionName;
NSname\subns\func(); // 调用函数 My\Full\NSname\subns\func

// 为函数设置别名
use function My\Full\functionName as func;
func(); // 调用函数 My\Full\functionName

// 导入常量
use const My\Full\CONSTANT;
echo CONSTANT; // 输出 My\Full\CONSTANT 的值

注意对命名空间中的名称(包含命名空间分隔符的完全限定名称如 Foo\Bar 以及相对的不包含命名空间分隔符的全局名称如 FooBar)来说,前导的反斜杠是不必要的也不推荐的,因为导入的名称必须是完全限定的,不会根据当前的命名空间作相对解析。 为了简化操作,PHP 还支持在一行中使用多个 use 语句:

<?php
use MyFullClassname as Another, MyFullNSname;

$obj = new Another; // 实例化 MyFullClassname 对象
NSnamesubnsfunc(); // 调用函数 MyFullNSnamesubnsfunc\

二、

 

除非注明,网络人的文章均为原创,转载请以链接形式标明本文地址:https://www.55mx.com/post/223
标签:namespaceusePHP
0
感谢打赏!

《PHP命名空间(namespace)及use关键字使用详解》的网友评论(0)

本站推荐阅读

热门点击文章