Для написания кода с прицелом на будущее, рекомендуется не помещать много переменных, функций и классов в глобальное пространство имен. Это поможет избежать конфликтов как со сторонними библиотеками, так и с функционалом языка, которым может быть добавлен в будущем.
Одним из самых распространенных способов избежать конфликтов классов и функций, это определять их в своем собственном, отдельном пространстве имен.
<?php
namespace MyProject;
function my_function() {
return true;
}
\MyProject\my_function();
Вам все еще нужно отслеживать уже используемые пространства имен, но единожды определившись с ним, вы можете добавить в него все функции и классы, не думая о возможных проблемах.
Максимально ограничивать количество переменных в глобальном пространстве имен является хорошей практикой. Это позволит минимизировать возможность конфликтов со сторонним кодом, который вы решите добавить в свой проект.
Замечание: Область видимости переменных
Согластно правилам области видимости переменных в PHP, переменные определенные внутри функций и классов не могут вступать в противоречие с переменными, заданными в глобальной области видимости.