7.11 Funktionen und Klassen aus dem globalen Namensraum verwenden

Problem

In Ihrem Programm machen Sie vom Namespace-Feature Gebrauch (ab PHP 5.3). Sie haben eine Funktion geschrieben, die auch PHP im globalen Namensraum unter dem gleichen Funktionsnamen bereitstellt. Sie wollen nun diese globale Funktion und nicht die in Ihrem Quellcode deklarierte lokale Funktion aufrufen.

Lösung

Wenn Sie einem Namen (z.B. einem Funktions- oder Klassennamen) einen Backslash voranstellen, wird der Name im globalen Namensraum gesucht, unabhängig davon, in welchem Subnamespace sich Ihr Code befindet:

namespace de\oreilly\phpckbk {
    function strlen($str) {
        return 99;
    }
    print strlen('Hallo Welt!');
    print \strlen('Hallo Welt!');
}
99
11

Diskussion

In obigem Beispiel wird ...

Get PHP 5 Kochbuch, Third Edition now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.