品易云推流 关闭
文章详情页
文章 > PHP教程 > php中命名空间的引入方法

php中命名空间的引入方法

头像

小妮浅浅

2021-01-26 16:04:243023浏览 · 0收藏 · 0评论

如果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教程

关注

关注公众号,随时随地在线学习

本教程部分素材来源于网络,版权问题联系站长!

底部广告图