纵有疾风起
人生不言弃

命名空间的魔术常量和namespace关键字

<?php
    /*1.命名空间和动态语言的结合必须使用限定名称
      2.__namespace__常量和namespace关键字
    */

    
    //声明命名空间test
    namespace test;{
    function demo(){
        echo “111111111<br>”;
    }

    $a=’\test\demo’;//或者使用$a=”test\demo”;也可以正常输出
    $c=__NAMESPACE__.’\demo’;
    //使用$a=”demo”;则无法调用动态语言调用函数功能
    $a();
    //使用命名空间常量结合类名输出
    $c();
    //使用namespace关键字等同于\test,如下
    \test\demo();
    //效果与上一样
    namespace\demo();
    //类也是一样的规则
    class demo1{
         static function one(){
            echo “2222222222<br>”;
        }
    }
    //使用完全限定名称
    $b=’\test\demo1′;
    //未定义命名空间的前提下可以正常输出
    $b::one();
}    
    //当命名空间比较长时,可以使用别名来代替简化输出;
    namespace hello\bai\du\ni\hao;
    use hello\bai\du\ni\hao as bie;{
    class hello{
        static function one($a){
                echo $a,$a,$a;
        }
    }
    //当前命名空间下正常输出;
    hello::one(19);
    //使用命名空间别名输出:
    bie\hello::one(20);
}        
?> 

原文链接:https://blog.csdn.net/living_ren/article/details/75215233

本站声明:网站内容来源于网络,如有侵权,请联系我们,我们将及时处理。

未经允许不得转载:起风网 » 命名空间的魔术常量和namespace关键字
分享到: 生成海报

评论 抢沙发

评论前必须登录!

立即登录