PHP命名空间

在php中怎样使用命名空间,为什么要使用命名空间,而且怎样定义命名空间。在这篇文章中主要来讨论这些问题。

什么是命名空间:在C++中曾经接触过命名空间,命名空间能让我们的代码看着不太累赘,而且使用命名空间很方便,让我们的变量的命名更加的简洁。命名空间主要解决这样的问题,

1.用户编写的代码与PHP内部的函数/类/常量或者是第三方的类,函数,常量之间的命名冲突。

2.为很长的标识符名称的创建一个别名,提高代码的可读性。

怎样来定义命名空间:

<?php

namespace  MyProject;

?>

而且我们可以在同一个文件中定义不同的命名空间的代码。在声明命名空间之前,唯一合法的代码是用于定义源代码编码方式declare,所有非PHP代码包含空白符都不能出现在命名空间之前。怎样来使用命名空间

<?php
namespace file2Project\subnamespace;
const FOO = 1;
function fOO(){
echo "你好,我在CurrentSpace命名空间中";
}
class foo
{
static function staticmethod()
{}
}
fOO();
?>
<!-- 可以看到的是我们在代码的最后加上了meta charset="UTF-8"这个代码之后,。浏览器就变成了
我们的汉字的编码形式 -->
<meta charset="utf-8">我们在这个php文件中定义一个常量,定义一个函数,和一个类并且在类中定义一个而函数,然后将这些代码放在一个命名空间。这这个命名空间是file2Project\subnamespace

然后我们创建另外的一代码:

file2.php

<?php
namespace file2Project;
include 'file1.php';//包含的 是文件的名字,而不是命名空间的名字
const FOO=2;
function fOO()
{
echo "我是file2.php中的函数";
echo "<hr/>";
 
}
class foo
{
static function staticmethod()
{
       echo "通过类名调用类中的函数双点,通过对象调用类中的函数或者是通过箭头";
}
}
//非限定名称,,也就是在前面是不使用命名空间,这个时候调用的函数是在file2Project这个
//命名空间中
fOO();
foo::staticmethod();
//通过限定名称调用函数
echo "<hr/>";
echo FOO;
subnamespace\fOO();
?>

我们在文件2也是使用了命名空间,而且当我们可以看到的是在文件1中的命名空间,和文件2的命名空间有一定的联系,或者说命名1中的命名空间可以看做是命名空间下面的一个目录。这样我们就可以在文件2中使用在1中定义的函数,常量,和类中的函数。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值