批改状态:合格
老师批语:命名空间, 就像你的固定电话的区号, 并没有什么神秘之处

space-a.php代码如下:
<?php
// 注释可以有,还可以继续添加新的命名空间,其他任何东西都不能有!
namespace userA{
function add($name){
echo '命名空间:" '.__NAMESPACE__.'"的函数名称:"'.__FUNCTION__.'"添加了名称a——'.$name;
}
}
namespace articleA{
function add($name){
echo '命名空间:" '.__NAMESPACE__.'"的函数名称:"'.__FUNCTION__.'"添加了名称a——'.$name;
}
}
namespace classA{
class nameA{
public $nameA_user = "类里面的变量";
public function nameAfun($id){
echo "我的手机号码——".$id;
}
}
}
namespace{
$strA = "这是A空间的变量";
include "space-b.php";
$strC = "这是A空间";
echo \userA\add('虎子爸爸');
echo "<br>";
echo \userB\add('虎子爸爸');
echo "<br>";
echo articleA\add('虎子爸爸的课题');
echo "<br>";
echo articleB\add('虎子爸爸的课题');
echo "<br>";
echo \userC\add('虎子爸爸');
echo "<br>";
echo articleC\add('虎子爸爸的课题');
echo "<br>";
echo "全局变量:".$strC;
echo "<br>";
echo "全局变量:".$strA;
echo "<br>";
echo (new \classA\nameA)->nameAfun('123456');
echo "<br>";
echo (new \classA\nameA)->nameA_user;
echo "<br>";
echo (new \classB\nameB)->nameAfun('123456');
echo "<br>";
echo (new \classB\nameB)->nameA_user;
}
?>点击 "运行实例" 按钮查看在线实例
space-b.php
<?php
namespace userB{
function add($name){
echo '命名空间:" '.__NAMESPACE__.'"的函数名称:"'.__FUNCTION__.'"添加了名称a——'.$name;
}
}
namespace articleB{
function add($name){
echo '命名空间:" '.__NAMESPACE__.'"的函数名称:"'.__FUNCTION__.'"添加了名称a——'.$name;
}
}
namespace classB{
class nameB{
public $nameA_user = "类里面的变量";
public function nameAfun($id){
echo "我的手机号码——".$id;
}
}
}
namespace{
include "space-c.php";
}点击 "运行实例" 按钮查看在线实例
space-c.php的代码:
<?php
namespace userC{
function add($name){
echo '命名空间:" '.__NAMESPACE__.'"的函数名称:"'.__FUNCTION__.'"添加了名称a——'.$name;
}
}
namespace articleC{
function add($name){
return \userC\add('蒙牛');
}
}
namespace{
$strC = "这是space-c.php的一个变量!";
$strA = "这是C空间的变量值,这里就会出现所谓的空间污染";
}
?>点击 "运行实例" 按钮查看在线实例
总结:
1、全局空间——简单理解就是space-a.php这个脚本文件
2、通过include “space-b.php”相当于把space-b.php,space-c.php 的小空间也纳入到了space-a.php这个脚本文件里面的全局大空间去了。
3、全局空间是相对的!空间最大的那个脚本文件就是全局空间,相当于根目录。
4、每个元素都是盒子!每个脚本也都是一个空间!
这样总结对不?
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号