这篇文章主要介绍了关于php面向对象之命名空间,有着一定的参考价值,现在分享给大家,有需要的朋友可以参考一下

广义上来说,命名空间是一种封装实物的方法;

例如,在操作系统中目录用来将相关文件分组,对于目录中的文件来说,它就扮演了命名空间的角色。

在PHP中,命名空间用来解决在编写类库或程序时创建可重用的代码,用于解决以下问题:

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

2)为很长的标识符名称,创建一个别名,提高代码的可读性;
登录后复制

通过关键namespace来声明。

1)namespace MyPro1;
     /*内容*/


2)namespace MyPro2{
    /*内容*/
};
登录后复制

注意:

如果一个文件中包含命名空间,必须在所有代码之前声明命名空间。

例子

<?php

namespace A;

function time()
{
    echo '这是属于我的time方法';
}


namespace B;

function time()
{
    echo '这是属于我的time方法2';
}

time();  // namespace B time()

\A\time();  // namespace A time()

\B\time();  // namespace B time()

echo \time();  // 系统的 time()
登录后复制

使用

namespace Father/Son;
登录后复制

例子

<?php
// 使用命名空间例子2

namespace A;

function time()
{
    echo '这是属于我的time方法';
}


namespace B;

function time()
{
    echo '这是属于我的time方法2';
}
time();  // namespace B time()

\A\time();  // namespace A time()

\B\time();  // namespace B time()

echo \time();  // 系统的 time()
登录后复制

相关推荐:

php面向对象之继承

php面向对象之重载

以上就是php面向对象之命名空间的详细内容,更多请关注Work网其它相关文章!

09-09 13:19