PHP名称空间(名称空间)简明教程

PHP名称空间(名称空间)简明教程
本文提出在php5.0x时间和后来被取消,实现php6。这时间提前到PHP5.3版本,可以看出开发商的关注和谨慎的态度。

当正式发布时,文档的内容可能已经过时(文档可能过时了),所以这里简要介绍了名称空间的用法:首先,声明一个名称空间并添加新的关键字名称空间,它应该从类文件的开头开始。

复制代码代码如下所示:
< PHP
命名空间项目::模块;
用户{
const status_ok =真;
函数寄存器($ data){

}

} >

然后可以在控制器(可能是其他文件)中调用它。

复制代码代码如下所示:
用户=新项目::模块::用户();
为用户->登记($ register_info);
没有相同的两个像往常一样,但我们可以连接两个独立的班,为

复制代码代码如下所示:
项目::模块:用户;
项目::模块:博客;
在这种方式中,它是更容易描述和理解从语言本身的变量和类之间的关系,从而避免了传统project_module_blog冗长的命名方式。

上面的描述可能很难说明使用名称空间的好处,新添加的用法和关键字可能更好地解释这个问题。

复制代码代码如下所示:
使用项目::模块;
$ =新模块::用户();
为用户->登记($ register_info);
甚至到那种程度

复制代码代码如下所示:
使用项目::::用户moduleuser模块;
moduleuser美元=新用户;
为用户->登记($ register_info);
类中的常数也可以例如通过命名空间,访问,在上面的类的status_ok可以通过命名空间。

复制代码代码如下所示:
项目::::::status_ok用户模块
u3002further访问,也可以使用别名来简化变量的名字

复制代码代码如下所示:
使用项目::::::status_ok用户模块作为status_ok;
回声status_ok;
顺便说一句,提出了全局命名空间的概念。所谓的超空间是一个变量,类和函数,不指定namespace.such作为

复制代码代码如下所示:
函数(){

}
这个函数可以用富()来执行,也可以使用。

最后,随着autoload函数的使用,你可以加载类,指定的命名空间的名称。简单的功能如下

复制代码代码如下所示:
功能__autoload($ className){
名称= strtolower美元($ className);
美元str_replace classname =(':',directory_separator,$ className);
require_once(dirname(__file__)。类名。美元。。类。php);
}
因此,例如,调用

复制代码代码如下所示:
__autoload(项目::::用户模块);
你可以自动加载project_module_user.class.php文件(虽然它似乎并不容易)。
免责声明:本网信息来自于互联网,目的在于传递更多信息,并不代表本网赞同其观点。其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,并请自行核实相关内容。本站不承担此类作品侵权行为的直接责任及连带责任。如若本网有任何内容侵犯您的权益,请及时联系我们,本站将会在24小时内处理完毕。
相关文章
返回顶部