Pour écrire du code portable, il est recommandé de ne pas placer de nombreuses variables, fonctions ou classes dans l'espace de noms global. Cela empêchera les conflits de nommage avec le code tiers ainsi que des ajouts possibles au langage.
Une façon commune de prévenir les conflits de noms de fonctions et de classes est de les ajouter à leur propre namespace.
<?php
namespace MyProject;
function my_function() {
return true;
}
\MyProject\my_function();Il faut toujours garder une trace des namespaces déjà utilisés, mais une fois un namespace choisi, il est possible d'y ajouter toutes les fonctions et les classes sans se soucier des conflits.
Il est considéré comme la meilleure pratique pour limiter le nombre de variables ajoutées à la portée globale afin d'éviter les conflits de nommage avec le code tiers.
Note: Portée des variables
En raison des règles de portée de PHP, les variables définies à l'intérieur des fonctions et des méthodes ne sont pas dans la portée globale et, en tant que telles, ne peuvent pas entrer en conflit avec d'autres variables définies dans la portée globale.