为了编写面向未来的代码,建议您不要在全局命名空间中放置过多变量、函数或类。这将防止与第三方代码以及语言未来可能添加的内容发生命名冲突。
防止函数和类命名冲突的一种常见方法是将它们添加到自己专用的命名空间中。
<?php
namespace MyProject;
function my_function() {
return true;
}
\MyProject\my_function();
这仍然需要您跟踪已使用的命名空间,但是一旦您确定要使用的命名空间,就可以将所有函数和类添加到其中,而无需再次考虑冲突。
建议限制添加到全局作用域的变量数量,以防止与第三方代码发生命名冲突。
注意:变量作用域
由于 PHP 的作用域规则,在函数和方法内部定义的变量不在全局作用域中,因此不会与在全局作用域中定义的其他变量发生冲突。