<sup id="sjju3"><noscript id="sjju3"></noscript></sup>
    <big id="sjju3"></big>

  • <blockquote id="sjju3"></blockquote>
    <blockquote id="sjju3"></blockquote>

      <td id="sjju3"></td>

      <big id="sjju3"></big>
        <code id="sjju3"><strong id="sjju3"><dl id="sjju3"></dl></strong></code>
      1. PHP中命名空间的使用例子

         更新时间:2019年03月22日 16:37:19   作者:CODETC   我要评论

        今天小编就为大家分享一篇关于PHP中命名空间的使用例子,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧

        程序语言中的命名空间指的是一种特殊的作用域,它包含处于该作用域下的标识符,同时它本身也是一种标识符。可以把命名空间与操作系统的目?#32423;?#24212;起来。一个命名空间相当于一个目录,命名空间里的类,函数,常量,相当于目录里的文件。同一个目录(命名空间)里的文件名不能相同,但是不同的目录里可以有相同名字的文件。

        使用命名空间可以解决名字冲突,比如定义了一个类,正好这个类与PHP内部的类或是include进来的一个类库里的类重名的时候。同时,命名空间还可以提高代码可读性,命名空间有一个别名功能,它可以帮你给一个长达十几个字符的类名起一个别名,从而缩短代码,也不用担心与其他空间的命名冲突。

        PHP中,只有类、函数、常量会受命名空间影响,php 5.3以后可以使用const关键字来定义常量,5.3这前使用define,命名空间只对const关键字有效。

        如下php代码:在file.php文件中,用namespace定义了一个常量,一个函数和一个类:(file1.php)

        <?php
        namespace MyProject; //定义命名空间MyProject
        const A = 1;
        function MyFunc(){
         return __FUNCTION__;
        }
        class MyClass{
         static function MyMethod(){
         return __METHOD__;
         }
        }
        ?>

        定义了命名空间后,使用的时候就要加上命名空间的名称,如下php代码:(file2.php)

        <?php
        include ("file1.php");
        echo MyProject\A."<br>";
        echo MyProject\MyFunc()."<br>";
        echo MyProject\MyClass::MyMethod();
        ?>

        定义了命名空间后,在同一个文件中,只要不属于同一个命名空间,就可以使用不同的方法,变量和类了!

        命名空间可以有多层?#25991;?#24335;,如下:

        namespace MyProject\Sunname;

        一个php文件中可以有多个不同的命名空间,如下代码:(file3.php)

        <?php
        namespace MyProject; //定义命名空间MyProject
        const A = php;
        function MyFunc(){
         return __FUNCTION__;
        }
        class MyClass{
         static function MyMethod(){
         return __METHOD__;
         }
        }
        //再定义一个命名空间
        namespace AnotherMyProject; //定义命名空间AnotherMyProject
        const A = php;
        function MyFunc(){
         return __FUNCTION__;
        }
        class MyClass{
         static function MyMethod(){
         return __METHOD__;
         }
        }
        ?>

        不仅如此,还可以用use关键?#23454;?#20837;命名空间,如下php代码:

        <?php
        include ("file1.php");
        use MyProject as ns;
        echo ns\A."<br>";
        echo ns\MyFunc()."<br>";
        echo ns\MyClass::MyMethod();
        ?>

        还有一个需要注意的东西,__NAMESPACE__常量,这个是用于返回当前命名空间的名称,在调试的时候可能很有用!

        总结

        以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对脚本之家的支持。如果你想了解更多相关内容请查看下面相关链接

        相关文章

        最新评论

        2018白小姐一肖中特马
        <sup id="sjju3"><noscript id="sjju3"></noscript></sup>
        <big id="sjju3"></big>

      2. <blockquote id="sjju3"></blockquote>
        <blockquote id="sjju3"></blockquote>

          <td id="sjju3"></td>

          <big id="sjju3"></big>
            <code id="sjju3"><strong id="sjju3"><dl id="sjju3"></dl></strong></code>
          1. <sup id="sjju3"><noscript id="sjju3"></noscript></sup>
            <big id="sjju3"></big>

          2. <blockquote id="sjju3"></blockquote>
            <blockquote id="sjju3"></blockquote>

              <td id="sjju3"></td>

              <big id="sjju3"></big>
                <code id="sjju3"><strong id="sjju3"><dl id="sjju3"></dl></strong></code>
              1. 重庆快乐10分开奖时间 浙江快乐时时彩走势图 最新时时彩3d软件 竞彩微信交流群 波数一波中特A4058 澳洲三分彩计划下载 浙江体彩6+1走路图 3d组三复试全包中奖 大龙虾江西时时彩 香港六合彩开奖号码 另版赌彩情探横财富 休彩排列五走势图 香港资料平特一尾005期 中国体育彩票中心 连珠五子棋