博主信息
博文 40
粉丝 0
评论 0
访问量 45718
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
PHP学习总结(7)命名空间总结——2019年09月30日20:00分
虎子爸爸
原创
862人浏览过

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

这样总结对不?



批改状态:合格

老师批语:命名空间, 就像你的固定电话的区号, 并没有什么神秘之处
本博文版权归博主所有,转载请注明地址!如有侵权、违法,请联系admin@php.cn举报处理!
全部评论 文明上网理性发言,请遵守新闻评论服务协议
0条评论
作者最新博文
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号

  • 登录PHP中文网,和优秀的人一起学习!
    全站2000+教程免费学