Mi chiedevo quale sarebbe il modo migliore e più pulito per definire una variabile di array costante simile al modo in cui la funzione definisce la funzione. Ho visto un sacco di gente che chiede a questa domanda in Google e finora la soluzione più semplice che ho venire in mente è di utilizzare il PHP serializzare funzione all'interno della definire dichiarazione, come questoQual è il modo più "elegante" per definire un array costante globale in PHP
define ("MY_ARRAY", serialize (array ("key1" => $value1,"key2" => $value2, ..)));
poi di utilizzare la costante definita si può fare qualcosa di simile:
$MY_ARRAY = unserialize (MY_ARRAY)
print_r ($MY_ARRAY);
Non sono sicuro se la funzione Serialize vi rallenterà se si hanno un sacco di definisce nel tuo codice. Cosa ne pensi?
A cosa serve la variante globale. Forse c'è un approccio migliore. – PeeHaa
$ GLOBALS ['MY_ARRAY'] = array(); – dqhendricks
PeeHaa, avrei bisogno che fosse globale se volessi accedere alla matrice costante da qualsiasi classe o funzione nello stesso spazio dei nomi! – techexpert