我是靠谱客的博主 勤劳可乐,最近开发中收集的这篇文章主要介绍命名空间的作用与使用方法,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

namespace即“命名空间”,也称“名称空间” 、”名字空间”。如果两个人写的库文件中出现同名的变量或函数(不可避免)

,使用起来就有问题了。为了解决这个问题,引入了名字空间这个概念。
命名空间:实际上就是一个由程序设计者命名的内存区域,程序设计者可以根据需要指定一些有名字的空间域,把一些全局实体

分别放在各个命名空间中,从而与其他全局实体分隔开来。
命名空间的作用:是建立一些互相分隔的作用域,把一些全局实体分隔开来。
命名空间的作用类似于操作系统中的目录和文件的关系,由于文件很多,不便管理,而且容易重名,于是人们设立若干子目录,

把文件分别放到不同的子目录中,不同子目录中的文件可以同名。调用文件时应指出文件路径。

如以下例子,在同一个文件中将两个同名方法分别放在两个命名空间中,类似将两个同名文件放在两个不同的目录下,

namespace aaa;
function a(){
 echo "a-a";
}
namespace b;
function a(){
echo 'b-a';
}

以下为调用各个命名空间中的元素的方法:

aaaa();//调用aaa命名空间中的方法a;调用不同命名空间中的方法:命名空间名方法名();
use aaa as acd;
acda();//调用aaa命名空间中的方法a;
echo '<br/>';
//use b;
a();//调用b命名空间中的方法a;
echo '<br/>';
use aaa;
aaaa();//调用aaa命名空间中的方法a;

当两个不同的文档使用相同的元素名时,就会发生命名冲突。命名空间可以避免这个问题,例如
a.php

namespace think;
class a{
public function b(){
echo 'think-a-b';
}
}

b.php

namespace think2;
class a{
public function b(){
echo 'think2-a-b';
}
}

c.php

require 'a.php';
require 'b.php';
use thinka;
$obj_a=new a();
$obj_a->b();
echo '<br/>';
use think2a as b;
$obj_b=new b();
$obj_b->b();

最后

以上就是勤劳可乐为你收集整理的命名空间的作用与使用方法的全部内容,希望文章能够帮你解决命名空间的作用与使用方法所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(46)

评论列表共有 0 条评论

立即
投稿
返回
顶部