D�finition des espaces de noms

Bien que du code PHP valide puisse �tre contenu dans un espace de noms, seuls trois types de code peuvent �tre affect�s par les espaces de noms : les classes, les fonctions et les constantes.

Les espaces de noms sont d�clar�s avec le mot-cl� namespace. Un fichier contenant un espace de noms doit d�clarer l'espace au d�but du fichier, avant tout autre code, avec une seule exception : le mot cl� declare.

Exemple #1 D�claration d'un espace de noms

<?php
namespace MonProjet;

const 
CONNEXION_OK 1;
class 
Connexion /* ... */ }
function 
connecte() { /* ... */  }

?>

Le seul �l�ment autoris� avant la d�claration d'espace de noms est la commande declare, pour d�finir l'encodage du fichier source. De plus, aucun code non-PHP ne peut pr�c�der la d�claration d'espace de noms, y compris des espaces :

Exemple #2 Erreur de d�claration d'un espace de noms

<html>
<?php
namespace MonProjet// erreur fatale : l'espace de noms doit �tre le premier �l�ment du script
?>

De plus, contrairement � d'autres structures PHP, le m�me espace de noms peut �tre d�fini dans plusieurs fichiers, ce qui permet de scinder le contenu d'un espace de noms sur plusieurs fichiers.