如何使用PHP命名空间进行代码组织与调用?
- 内容介绍
- 文章标签
- 相关推荐
本文共计1144个文字,预计阅读时间需要5分钟。
命令空间是为了解决当前文件内相同作用域内常量名、函数名、类名之间的命名冲突。在PHP中,变量名是不会冲突的,在相同作用域内,对于同一变量,最后一个定义的会覆盖之前的定义。
命名空间是为了解决当前文件内相同作用域内常量名之间、函数名之间、类名之间的命名冲突。
在 PHP 中变量名是不会冲突的,在相同作用域内,对于同一个变量,最后一个变量会取代前一个变量的值。
举例
同一作用域,相同变量
<?php $a = '123'; $a = '456'; $a = '789'; echo $a; //显示 789
代码编辑器不报错,PHP运行结果不报错,显示最后一个 $a 的值。
同一作用域,相同常量
<?php const a = '123'; const a = '356'; const a = '789'; echo a //显示 123
代码编辑器报错,PHP运行结果不报错,显示第一个常量 a 的值。
常量换成 define 定义
<?php define('a',123); define('a',456); define('a',789); echo a; //显示 123
代码编辑器报错,PHP运行结果不报错,显示第一个常量 a 的值,和 const 定义常量的结果一样。
同一作用域,相同函数
<?php function a(){ echo '123'; } function a(){ echo '456'; } a(); // PHP 运行结果报错 Cannot redeclare a()
代码编辑器报错,PHP 运行结果报错。
本文共计1144个文字,预计阅读时间需要5分钟。
命令空间是为了解决当前文件内相同作用域内常量名、函数名、类名之间的命名冲突。在PHP中,变量名是不会冲突的,在相同作用域内,对于同一变量,最后一个定义的会覆盖之前的定义。
命名空间是为了解决当前文件内相同作用域内常量名之间、函数名之间、类名之间的命名冲突。
在 PHP 中变量名是不会冲突的,在相同作用域内,对于同一个变量,最后一个变量会取代前一个变量的值。
举例
同一作用域,相同变量
<?php $a = '123'; $a = '456'; $a = '789'; echo $a; //显示 789
代码编辑器不报错,PHP运行结果不报错,显示最后一个 $a 的值。
同一作用域,相同常量
<?php const a = '123'; const a = '356'; const a = '789'; echo a //显示 123
代码编辑器报错,PHP运行结果不报错,显示第一个常量 a 的值。
常量换成 define 定义
<?php define('a',123); define('a',456); define('a',789); echo a; //显示 123
代码编辑器报错,PHP运行结果不报错,显示第一个常量 a 的值,和 const 定义常量的结果一样。
同一作用域,相同函数
<?php function a(){ echo '123'; } function a(){ echo '456'; } a(); // PHP 运行结果报错 Cannot redeclare a()
代码编辑器报错,PHP 运行结果报错。

