Les namespace permettent de grouper des classes ou des constantes (pas des variables). Ils s'utilisent ainsi:
Les namespace ne sont pas imbricables (dommage).Code PHP :
<?php
namespace constante\MySQL\divisionMilitaire
{
const table = "militaire_divisions";
const idMembre = "id_membre";
}
namespace constante\divisionMilitaire\statut
{
const pretAuCombat = 1;
const auRepos = 2;
const engageEnCombat = 3;
}
Certains diront "y'a qu'à utiliser ENUM('Prête au combat', 'Au repos', 'Engagé en combat') comme type de colonne dans MySQL", mais les ENUM sont assez lourds je trouve, car:
► Si on veut ajouter un type, on doit modifier la structure de la BDD
► La gestion des valeurs erronées (envoyer à un ENUM une valeur qu'il n'est pas censé gérer) n'est pas forcément top
► Il y a un coté "mélange structure / données" je trouve
Donc, bon, j'aime pas utiliser des ENUM et je préfère jouer ainsi avec les constantes.