首页 > 其他 > 详细

学斋随笔,初九潜龙勿用,-56tp命名空间

时间:2019-03-22 15:03:48      阅读:147      评论:0      收藏:0      [点我收藏+]

  在我们去开发大型的项目的时候,可能会需要非常多的文件,面向对象通过命名空间来解决我们的僵局,在命名空间中可以有类,函数与常量,只有const定义的常量命名空间才有效。命名空间的名字必须符合PHP命名的规则。  

  命名空间是逻辑上的定义,逻辑的名称 不是物理上的路径,Tp中为了寻址的方便把命名空间做成地址。

  命名空间是一种封装事物的方法。 

  PHP 命名空间可以解决以下两类问题:

 

    用户编写的代码与PHP内部的类/函数/常量或第三方类/函数/常量之间的名字冲突。

    为很长的标识符名称(通常是为了缓解第一类问题而定义的)创建一个别名(或简短)的名称,提高源代码的可读性。

  命名空间通过关键字namespace 来声明。如果一个文件中包含命名空间,它必须在其它所有代码之前声明命名空间。其格式如下:

    <?php

     // 定义代码在 ‘MyProject‘ 命名空间中 namespace MyProject;

    // ... 代码 ...

  关于命名空间的使用:

    PHP 命名空间中的类名可以通过三种方式引用:

      1非限定名称,或不包含前缀的类名称,例如 $a=new foo(); 或 foo::staticmethod();。

      2限定名称,或包含前缀的名称,例如 $a = new subnamespace\foo(); 或 subnamespace\foo::staticmethod();。

      3完全限定名称,或包含了全局前缀操作符的名称,例如, $a = new \currentnamespace\foo(); 或 \currentnamespace\foo::staticmethod();。

  命名空间的注意事项:

 

    1最顶层的\表示的是公共空间

 

    2namespace必须在最上面。

 

    3命名是虚拟的空间,不是真实存在的目录,但是ThinkPHP的命名空间是真实的地址路径。

 

    4当前文件中include具有命名空间的文件,不会改变当前文件的命名空间。

 

    5use有两个作用 引入命名空间  引入类

 

  

 

学斋随笔,初九潜龙勿用,-56tp命名空间

原文:https://www.cnblogs.com/biruofeng/p/10577973.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!