PHP  »  Articoli  »  Programmazione Php 

Namespace in PHP: esempi pratici di utilizzo

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.

Associare funzioni e classi ad un namespace

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.

Guide PHP

Guida Yii Framework

Come creare applicazioni Web in modo semplice e veloce con il...

Guida Zend Framework

Diventate professionisti dello sviluppo Web. Zend Framework è lo...

Guida Applicazioni Facebook con PHP

Come realizzare un'applicazione per Facebook. Dalle basi della...

Altre guide

Newsletter @PHP

Ogni lunedì, direttamente nella tua e-mail: script, articoli, guide e tutorial su PHP, MySQL e Apache.

Iscriviti alla newsletter

Altre newsletter

Corsi in aula

Corso PHP per Webmaster

11 Giugno 2012 a Milano
Disponibilità: 7 Posti

Corso Google AdWords Base

25 Giugno 2012 a Milano
Disponibilità: 7 Posti

Corso Google AdWords Base

05 Giugno 2012 a Roma
Disponibilità: 7 Posti