Blogger Information
Blog 40
fans 0
comment 0
visits 37601
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template
PHP学习总结(7)命名空间总结——2019年09月30日20:00分
虎子爸爸
Original
631 people have browsed it

namespace-1.png

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、每个元素都是盒子!每个脚本也都是一个空间!

这样总结对不?



Correction status:qualified

Teacher's comments:命名空间, 就像你的固定电话的区号, 并没有什么神秘之处
Statement of this Website
The copyright of this blog article belongs to the blogger. Please specify the address when reprinting! If there is any infringement or violation of the law, please contact admin@php.cn Report processing!
All comments Speak rationally on civilized internet, please comply with News Comment Service Agreement
0 comments
Author's latest blog post