Sans aucune définition d'espace de noms, toutes les définitions de classes et de fonctions sont placées dans l'espace global - comme tel était le cas dans PHP avant que les espaces de noms ne soient supportés. Le fait de préfixer un nom avec :: spécifie que le nom est requis depuis l'espace global mais aussi dans le contexte de l'espace de noms.
Exemple #1 Utilisation de l'espace global
<?php
namespace A::B::C;
/* La fonction est A::B::C::fopen */
function fopen() {
/* ... */
$f = ::fopen(...); // appel global de fopen
return $f;
}
?>