
如果php中的命名空间需求较多,可以创建多级空间来解决,但这样也产生了许多不便之处。为了使代码部分进行简化,我们又增加了引入的方法,通过use关键字来实现,主要是给对象起别名的方法。下面我们就命名空间的引入好处、use关键字使用、引入实例分别带来详解。
1.命名空间引入好处
(1)命名空间可以声明为多级空间,这个多级空间元素在其他空间内部访问的时候,不得已需要通过完全限定名称方式,这个完全限定名称不方便开发、维护、使用。
(2)为了降低代码的复杂度,可以在当前的空间把指定的空间给引入进来,进而可以方便地通过“限定名称”的方便的形式使用其他空间的元素.
2.使用use关键字
如果引入类与当前空间的类起冲突时,可以使用as起别名;如use App\Student as Stu;
使用use引入后,可以直接使用类名称;$student = new Student()
3.实例
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 | <?php
namespace app\index\controller;
const CITY = '北京' ;
function say()
{
return 'Hello world!' ;
}
class User
{
public function hello()
{
return "I'm fine, thank you!" ;
}
}
namespace myspace;
echo \app\index\controller\CITY. '<br>' ;
echo \app\index\controller\say(). '<br>' ;
$user = new \app\index\controller\User;
echo $user ->hello();
echo '<hr>' ;
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>' ;
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教程