您的位置:首页 > 编程语言 > PHP开发

thinkphp命名空间总结案例

2016-05-01 21:47 591 查看
namespace 使用命名空间主要是为了在引入相同的文件名类名和函数的时候,会发生冲突,为了解决这种冲突需要使用命名空间。
namespace的使用:
        1、namespace一般和文件夹的名字相同,使用\作为区分,
        2、namespace在使用的文件中调用类对象的时候需要加上,命名空间的前缀。在使用自动加载函数的时候,命名空间的前缀也会被带入classname的参数中。
        3.在namespace的test文件中,使用不使用命名空间是没有关系的。如果要使用use,就得先声明当前的命名空间。使用use 就可以简写 命名空间,在多处使用类名的时候可以使用use,否则不推荐。 
        use work;//在创建其他目录的文件时候就可以简写类名
        new A( );//否则应该写成这样" new \work\A( )"
 
文件一此文件在work目录下文件名和文件二相同:
  namespace  work;

class A{
    function call ( ){
       echo"myname A";

    }
}
文件二此文件在work/name/目录下:
 namespace work\name;

class A{
    function call( ){
     echo"nyname B";
    }
}
文件三此文件用于以上两个的测试:
 <?php 
//namespace work\A;
//use work;  可以省略的哦!!!
require '../a.class.php';
require './a.class.php';

$a=new \work\A();
$a->call();

$b=new \work\name\A();
$b->call();
?>
使用use访问命名空间需要拼接 “feidao\name”
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  php thinkphp