PHP的命名空间

简介:

  防止名称冲突。

原理:

  类似文件目录/usr/local这样的。

用法:

  namespace:定义命名空间;  
  use:取别名;

代码示例:
file 1.php

<?php 
namespace foo;
function test1(){
    echo "namespace....";
}
?>

file 2.php

<?php
include '1.php';
use foo as a;
a	est1();
?>

注意:如果用use foo,但是后面没有取别名as a,则会出现错误提示:Warning: The use statement with non-compound name 'foo' has no effect in。

再看一个例子:

1.php

<?php
namespace appfruit;
class apple{
    function eat(){
        echo "eat....";
    }
    
    function play(){
        echo "play....";
    }
}

function test(){
    echo "test...";
}
?>

2.php

<?php
/*
 * 必须把1.php文件包含进来
 * 否则出错:Fatal error: Call to undefined function appfruit	est() in
 *                     D:wampwww	est2.php on line 9
 */
include '1.php';
use appfruit as a;//用use来取别名
a	est();    //调用1.php里的一个方法
$a = new aapple();    //实例化1.php里的一个对象
$a->eat();
?>

注意:如果2.php文件里不包含1.php(include '1.php')则会找不到1.php里定义的方法或者类。

原文地址:https://www.cnblogs.com/thinksasa/p/3423480.html