di: Claudio Garau 13 Gennaio 2012
Introdotti con la versione 5.3 di PHP, i namespaces (letteralmente “spazi dei nomi”) sono in pratica delle porzioni di memoria che ospitano nomi di elementi definiti in sede di sviluppo e impediscono che eventuali omonimie (Name collisions) possano dar luogo a malfunzionamenti o ambiguità.
Uno dei vantaggi dei namespaces sta nel fatto di poter creare uno spazio indipendente per nomi associati a classi, funzioni e altri elementi che potranno essere richiamati facendo riferimento al namespace di appartenenza.
Per un approfondimento teorico sui namespace si consiglia la lettura di un articolo pubblicato qualche tempo fa su questo stesso sito, in questa sede verrà invece proposto un esempio pratico basilare del loro utilizzo.
Nonostante l’introduzione dei namespace sia stata una delle novità più rilevanti e richieste di PHP 5.3, non è facile trovare in rete degli esempi pratici relativi al loro utilizzo; un semplice esempio allo scopo di colmare questa lacuna dovrebbe naturalmente partire dalla definizione di un namespace all’interno di un file che, per rapidità di esposizione, sarebbe possibile denominare semplicemente prova.php; il codice necessario per la definizione sarà il seguente:
<?php // definizione di un namespace namespace prova; ?>
Come è possibile notare, un namespace viene introdotto attraverso l’omonima parola chiave; ora che il primo passaggio è stato concluso, “esiste” un namespace denominato “prova” e tutti i costrutti associati (classi, funzioni, costanti etc.) apparterranno ad esso ed esisteranno nell’ambito del suo contesto.
Prima di proseguire, è utile ricordare che quella relativa alla definizione del namespace deve essere tassativamente la prima istruzione presente all’interno del codice che la contiene, per fare un esempio, una sintassi del genere:
echo "Definisco un namespace."; // definizione di un namespace namespace prova;
Darà luogo ad una notifica di errore come la seguente:
“Fatal error: Namespace declaration statement has to be the very first statement in the script in ..”
Nello stesso modo non potrà essere presente prima di essa alcun output HTML.
Guida Yii FrameworkCome creare applicazioni Web in modo semplice e veloce con il... |
Guida Zend FrameworkDiventate professionisti dello sviluppo Web. Zend Framework è lo... |
Guida Applicazioni Facebook con PHPCome realizzare un'applicazione per Facebook. Dalle basi della... |
Ogni lunedì, direttamente nella tua e-mail: script, articoli, guide e tutorial su PHP, MySQL e Apache.
Iscriviti alla newsletter
|
|
Corso PHP per Webmaster11 Giugno 2012 a Milano |
|
|
Corso Google AdWords Base25 Giugno 2012 a Milano |
|
|
Corso Google AdWords Base05 Giugno 2012 a Roma |