為了編寫具備前瞻性的程式碼,建議您不要在全域命名空間中放置太多變數、函式或類別。這將避免與第三方程式碼以及未來可能新增的語言功能發生命名衝突。
防止函式和類別命名衝突的一種常見方法是將它們新增到自己專用的命名空間。
<?php
namespace MyProject;
function my_function() {
return true;
}
\MyProject\my_function();
這仍然需要您追蹤已使用的命名空間,但是一旦您決定了要使用的命名空間,就可以將所有函式和類別新增到其中,而無需再次考慮衝突。
為了避免與第三方程式碼發生命名衝突,最佳實務是盡量減少新增到全域範圍的變數數量。
注意事項:變數作用域
由於 PHP 的作用域規則,在函式和方法內定義的變數不在全域範圍內,因此不會與在全域範圍內定義的其他變數衝突。