php命名空间的缺点有哪些

  

php命名空间的缺点有哪些?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。

<强>定义命名空间

必须是第一个语句,前面不能有任何语句,注释可以。
必须是绝对命名空间。

namespace  bookrpg \配置;//或者   namespace  bookrpg \配置   {   }   namespace  \ bookrpg \ config,//错误,不能有前导\

<>强导入命名空间

必须是绝对命名空间。

use  bookrpg \ config \名称;   use  \ bookrpg \ config \类名,//可以有前导\,但不建议加   use  bookrpg \ config \ ClassName  as  NewClassName;   use 异常;   use  \例外,//可以有前导\,但不建议加

<强>使用命名空间

使用绝对命名空间

cls 美元;=,new  \ bookrpg \ config \ ClassName ();   class  MyException  extends  \例外   {   }

使用相对命名空间

namespace  bookrpg   {//等才能同于new  \ bookrpg \ config \ ClassName ();   时间=美元才能cls  new 配置\ ClassName ();//错才能误,php会认为是\ bookrpg \异常,而不是全局类例外   时间=美元才能ex  new 异常();   }

<>强怪异的地方

c++、Java、c#都有相似的命名空间概念,而php的命名空间不跟随大流,有自己的一套独立的思想,对于先入为主的人来来说就显得怪异和令人迷惑。

<李>

命名空间中居然有反斜杠?

点号(.)已经被用作字符串连接符了,又要区分绝对和相对命名空间,新.a.b.c()太不美观,所以选择反斜杠吧。

<李>

一旦使用了命名空间,使用全局类也要加上“\”或者使用一下,累不累呀?

没办法,为了严格类比文件系统的概念,也为了随便定义类名,而不用担心类名冲突。

<李>

既然是严格类比文件系统,为什么定义和导入命名空间的时候,前面不加\呢?

只能说,php的设计者不是完美主义者。

但php的命名空间确实缺乏逻辑完美性:

<李>

前导\的使用不统一,同样是绝对命名空间,定义的时候不允许用,导入的时候却允许用。

<李>

即使是全局类,在非全局命名空间下,也必须使用前导\,而全局函数和变量又不受此限制。

<强>使用建议

<李>

定义和导入命名空间的时候,统一不加前导\

<李>

所有的类都使用使用导入,包括全局类,只命名空间类,有冲突的就像一下

<李>

禁止直接使用相对命名空间

php开发环境搭建工具有哪些

一、phpStudy,是一个新手入门最常用的开发环境,二,WampServer, WampServer也同样的也是和phpStudy一样操作简单对小白比较友好。三,XAMPP, XAMPP Apache (php + MySQL + + PERL)是一个功能强大的建站集成软件包;四,MAMP, MAMP分为两种MAMP和MAMP Mac Pro。五,宝塔面板,宝塔面板是一款服务器管理软件,支持windows和linux系统,六UPUPW, UPUPW是目前windows平台下最具特色的Web服务器php套件。

关于php命名空间的缺点有哪些问题的解答就分享到这里了,希望以上内容可以对大家有一定的帮助,如果你还有很多疑惑没有解开,可以关注行业资讯频道了解更多相关知识。

php命名空间的缺点有哪些