• 技术文章 >PHP >PHP教程

    php中命名空间的引入方法

    小妮浅浅小妮浅浅2021-01-26 16:04:24原创3130

    如果php中的命名空间需求较多,可以创建多级空间来解决,但这样也产生了许多不便之处。为了使代码部分进行简化,我们又增加了引入的方法,通过use关键字来实现,主要是给对象起别名的方法。下面我们就命名空间的引入好处、use关键字使用、引入实例分别带来详解。

    1.命名空间引入好处

    (1)命名空间可以声明为多级空间,这个多级空间元素在其他空间内部访问的时候,不得已需要通过完全限定名称方式,这个完全限定名称不方便开发、维护、使用。

    (2)为了降低代码的复杂度,可以在当前的空间把指定的空间给引入进来,进而可以方便地通过“限定名称”的方便的形式使用其他空间的元素.

    2.使用use关键字

    如果引入类与当前空间的类起冲突时,可以使用as起别名;如use App\Student as Stu;

    使用use引入后,可以直接使用类名称;$student = new Student()

    3.实例

    <?php
     
    /**
     * 命名空间的导入,本质上就是用一个别名,来简化一个比较长的多级的命名空间名称
     *
     * 导入主要针对类空间,PHP5.6以后,也支持常量与函数空间名称导入
     *
     * 导入空间默认名称主要用use,空间别名的简化用as
     * 使用use导入空间别名,可用as来自定义别名,防止空间重名
     */
     
    namespace app\index\controller;
    const CITY = '北京';
     
    function say()
    {
        return 'Hello world!';
    }
     
    class User
    {
        public function hello()
        {
            return "I'm fine, thank you!";
        }
    }
     
    namespace myspace;
     
    // 不使用use来简化空间名称
     
    echo \app\index\controller\CITY.'<br>';
    echo \app\index\controller\say().'<br>';
    $user = new \app\index\controller\User;
    echo $user->hello();
    echo '<hr>';
     
    // 用use来导入一个命名空间,并起个简短的名称
    use const app\index\controller\CITY;
    use function app\index\controller\say;
    use app\index\controller\User;
    echo CITY.'<br>';
    echo say().'<br>';
    $user = new User;
    echo $user->hello();
    echo '<hr>';
     
    // 用as来进一步简化空间的名称
    use const app\index\controller\CITY as C;
    use function app\index\controller\say as s;
    use app\index\controller\User as U;
    echo C.'<br>';
    echo s().'<br>';
    $user = new U;
    echo $user->hello();
    echo '<hr>';

    以上就是php中命名空间的引入方法,在一定程度上能解决代码繁琐和满足多级空间的需求。除了use外还有一些其他方法,大家可以在课后查找资料。更多php学习指路:php教程

    专题推荐:php命名空间引入
    上一篇:命名空间在php中的使用 下一篇:php lavarel框架导出文件

    相关文章推荐

    • php中组合数组的方法• php中sort函数是什么• php中rsort函数是什么• php命名空间的基本介绍• 命名空间在php中的使用

    全部评论我要评论

    © 2021 Python学习网 苏ICP备16018502号-40

  • 取消发布评论
  • 

    Python学习网