PHP 命名空间关键字和 __NAMESPACE__ 常量
phpserver side programmingprogramming更新于 2025/8/19 21:52:17
简介
在 PHP 中,namespace 关键字用于定义命名空间。它也可用作运算符,请求访问当前命名空间中的特定元素。__NAMESPACE__ 常量返回当前命名空间的名称
__NAMESPACE 常量
对于命名的命名空间,__NAMESPACE__ 返回其名称;对于全局和未命名的命名空间,则返回空字符串
示例
#test1.php <?php echo "name of global namespace : " . __NAMESPACE__ . "
"; ?>
输出
返回空字符串
name of global namespace :
对于命名命名空间,返回其名称
示例
<?php namespace myspace; echo "name of current namespace : " . __NAMESPACE__ . "
"; ?>
输出
name of current namespace : myspace
动态名称构造
__NAMESPACE__ 对于动态构造名称非常有用
示例
<?php
namespace MyProject;
class myclass {
function hello(){echo "hello world";}
};
$cls="myclass";
function get($cls){
$a = __NAMESPACE__ . '\' . $cls;
return new $a;
}
get($cls)->hello();
?>
输出
以上代码显示以下输出
hello World
命名空间运算符
namespace 关键字可以用作类的 self 运算符的等效项,用于显式地从当前命名空间或子命名空间请求元素。
示例
<?php
namespace Myspace;
class myclass {
function hello(){echo "hello Myspace";}
}
$a = new namespace\myclass();
$a->hello();
?>
输出
以上代码显示以下输出
hello Myspace
从全局命名空间,命名空间运算符引用当前命名空间中的函数/类,即全局命名空间
示例
<?php
class myclass {
function hello(){echo "hello global space";}
}
$a = new namespace\myclass();
$a->hello();
?>
输出
以上代码显示以下输出
hello global space

