Namensräume
Inhaltsverzeichnis
- Deklaration von Namensräumen
- Nutzung von Namensräumen
- Der globale Namensraum
- __NAMESPACE__
- Regeln der Namensauflösung
Überblick über Namensräume
PHP-Namensräume wurden entworfen, um das Problem der Sichtbarkeit in großen PHP-Bibliotheken zu lösen. In PHP sind alle Klassendefinitionen zunächst einmal global. Der Autor einer Bibliothek muss sich daher beim Anlegen von Hilfsklassen oder Bibliotheksklassen, die Teil des öffentlichen API der Klasse sind, bewusst sein, dass andere Bibliotheken mit ähnlicher Funktionalität existieren können, und muss daher eindeutige Namen wählen, so dass beide Bibliotheken koexistieren können. Dies wird typischerweise gelöst, indem jedem Klassennamen ein eindeutiger Vorspann vorangestellt wird. Datenbankklassen würden so z.B. mit Meine_DB_Bibliothek beginnen usw. Wenn die Bibliothek wächst, addieren sich die verschiedenen Vorspanntexte auf und können so zu sehr langen Namen führen.
Namensräume erlauben dem Entwickler, die Sichtbarkeit von Namen zu beeinflussen, ohne bei jedem Einsatz einer Klasse auf den langen Namen zurückzugreifen, und lösen so das Problem des gemeinsamen globalen Namensraums, ohne den Programmtext dabei unlesbar zu machen.
Namensräume sind in PHP ab PHP 5.3.0 verfügbar. Die Umsetzung ist noch experimentell und daher kann sich diese Dokumentation noch ändern.
Namensräume
