php的命名空间
来源:互联网 发布:raphael.js 类似工具 编辑:程序博客网 时间:2024/05/18 00:07
背景:
如果在平时中我们去require一个一个的php文件,不会存在多大的问题。
但是设想这样一个场景:如果有两个php文件中存在一样的class名字,那么同时调用的时候,就会出现报错信息.因为根本不知道你调用的是哪一个具体的class名字.
下面有具体的demo.
这个时候引入新的一个概念:命名空间namespace.
新建一个a.php b.php c.php
a.php
class Hello{ public static function show() { echo "this is a show"; }}
b.php
class Hello{ public static function show() { echo "this is b show"; }}
c.php
require_once("a.php");require_once("b.php");$hello=new Hello();
当执行的时候会报错
为了解决这个引入名字相同类和方法,我们引入一个命名空间
先上代码后面再放结论
a.php
<?phpnamespace name\a;class Hello{ public static function show() { echo "this is a show"; }}b.php
<?phpnamespace name\b;class Hello{ public static function show() { echo "this is b show"; }}c.php
<?phprequire_once("a.php");require_once("b.php");use name\b;use name\a;$hello1=new a\Hello();$hello2=new b\Hello();$hello1::show();echo "<br/>";$hello2::show();结果
结论
1.命名空间必须在第一行。
2.命名空间必须有层级,至少为2层。
3.当引入命名空间后,可以解决因为相同名字的类或方法报错的问题。
阅读全文
0 0
- PHP的命名空间
- PHP的命名空间
- PHP的命名空间
- php的命名空间
- PHP的命名空间
- PHP的命名空间
- PHP的命名空间
- php的命名空间
- php的命名空间
- PHP 命名空间的简介
- PHP的命名空间(转)
- PHP命名空间的理解
- php命名空间的理解
- php命名空间的定义
- PHP的命名空间的学习
- PHP的命名空间的问题
- PHP的命名空间的实现
- PHP的命名空间的使用
- 二进制和十进制的相互转换
- 时间与时间戳之间的转换
- Mac Python3安装MySQL问题记录
- vue-cli 初始化项目结构
- 网络是怎样连接的学习笔记(四)
- php的命名空间
- Java I/O 文件复制练习
- JavaScript
- python中求两个List的交集、并集和差集
- Netbeans创建JaveWeb项目
- 把java类生成jar
- JDK1.8新特性了解
- 使用keytool 生成证书
- tensonflow DNN实验