I don't think it makes sense nowadays. We have namespaces now!
Con el fin de escribir código que funcione en el futuro, se recomienda no colocar muchas variables, funciones o clases en el espacio de nombres global. Esto prevendrá de conflictos de nombres con código de terceros así como con posibles adiciones futuras al lenguaje.
Una manera común de evitar conflictos con nombres de funciones y clases es añadirlos a su propio espacio de nombres dedicado.
<?php
namespace MiProyecto;
function mi_función() {
return true;
}
\MiProyecto\mi_función();
Esto todavía necesita que se mantenga la cuenta de los espacios de nombres ya utilizados, pero una vez que se decido el espacio de nombres que se va a usar se pueden añadir todas las funciones y clases e él sin tener que pensar más en conflictos.
Es una buena práctica limitar el número de variables añadidas al ámbito global para evitar conflictos de nombres con código de terceros.
Nota: Ámbito de variables
Debido a las reglas de ámbito de PHP, las variables definidas dentro de funciones y métodos no están en el ámbito global y, por tanto, no pueden crear conflictos con otras variables definidas en el ámbito global.
I don't think it makes sense nowadays. We have namespaces now!
The javascript community has developed a strong cultural bias against adding anything to the global namespace. (See e.g. Addy Osmani's article on Essential JavaScript Namespacing Patterns .) Namespaces have been available in JS for many years and are ubiquitous. There is also a great deal of freely available tutorial material for the interested reader.
Even though nowadays we do have namespaces, for the cases in which the user chooses to not use namespaces theses tips should be followed.
@willian at gt44 dot com: What about clashes of the namespace? It is still good advice to check for previously used names before assigning anything to the global namespace.