0Pricing
PHP Academy · Lektion

Namespaces deklarieren und verwenden

Kapseln Sie Klassen in Namespaces und importieren Sie sie mit use-Anweisungen.

Namespaces deklarieren und verwenden ist eine kostenlose PHP Academy-Lektion auf CoddyKit. Dies ist Lektion 1 von 4. Du kannst die komplette Lektion unten kostenlos lesen – dann übst du sie direkt im Browser mit einem integrierten Code-Editor und einem KI-Tutor rund um die Uhr. Sie ist Teil des PHP Academy-Lernpfads, und dein Fortschritt wird über Web und CoddyKit-App synchronisiert. Der PHP Academy-Kurs umfasst insgesamt 4 Lektionen.

Was ist ein Namespace?

Ein Namespace fasst zusammengehörige Klassen, Funktionen und Konstanten zusammen, um Namenskonflikte zwischen Bibliotheken zu vermeiden.

Einen Namespace deklarieren

Verwenden Sie das Schlüsselwort namespace als erste Anweisung in einer PHP-Datei (nach <?php).

<?php
namespace App\Services;

class Logger {
    public function log(string $msg): void {
        echo $msg;
    }
}

Namespace-Segmente

Segmente werden durch Backslashes (\) getrennt. Beim PSR-4-Autoloading entspricht jedes Segment typischerweise einem Verzeichnis.

Importieren mit use

Das Schlüsselwort use importiert einen vollqualifizierten Klassennamen, sodass Sie ihn über seinen kurzen Namen referenzieren können.

<?php
namespace App\Controllers;

use App\Services\Logger;

class HomeController {
    public function index(): void {
        $logger = new Logger();
        $logger->log("visited");
    }
}

Vollqualifizierte Namen

Referenzieren Sie eine Klasse ohne use, indem Sie ihr einen führenden Backslash voranstellen.

<?php
$logger = new \App\Services\Logger();
$logger->log("Hello");

Der globale Namespace

Code ohne Namespace befindet sich im globalen Namespace. Auch integrierte Klassen wie \DateTime befinden sich dort. Setzen Sie innerhalb eines Namespace ein \ voran.

Funktionen und Konstanten importieren

Verwenden Sie use function und use const, um Symbole zu importieren, die keine Klassen sind.

<?php
namespace App;

use function App\Utils\formatDate;
use const App\Utils\DATE_FORMAT;

echo formatDate(time(), DATE_FORMAT);

Gruppierte use-Anweisungen

Importieren Sie mehrere Symbole in einem einzigen gruppierten use-Block (PHP 7+).

<?php
use App\Models\{User, Post, Comment};

Ein Namespace pro Datei

Mehrere Namespace-Deklarationen in einer Datei sind zulässig, werden aber nicht empfohlen. Bevorzugen Sie aus Gründen der Übersichtlichkeit und der Kompatibilität mit Autoloadern einen Namespace pro Datei.

Übliche Konventionen

Laravel und Symfony verwenden App\ als Root-Namespace, der in composer.json src/ oder app/ zugeordnet wird.

Organisation von Sub-Namespaces

Gruppieren Sie nach Feature oder Schicht: App\Http\Controllers, App\Domain\Orders, App\Infrastructure\Database.

Rückblick: Namespaces

Wichtige Punkte: namespace muss die erste Anweisung sein; use importiert Symbole; Backslashes trennen Segmente; setzen Sie innerhalb eines Namespace \ vor globale Klassen.

Kurztest

Welches Schlüsselwort importiert eine Klasse aus einem anderen Namespace?

Häufig gestellte Fragen

Ist die Lektion „Namespaces deklarieren und verwenden“ kostenlos?

Ja — der vollständige Text von „Namespaces deklarieren und verwenden“ ist hier im Web kostenlos zu lesen. Um sie interaktiv zu üben (integrierter Code-Editor und 24/7 KI-Tutor) und den Rest des PHP Academy-Kurses freizuschalten, upgrade auf CoddyKit PRO. Der PHP Academy-Kurs umfasst insgesamt 4 Lektionen.

Was lerne ich in „Namespaces deklarieren und verwenden“?

Kapseln Sie Klassen in Namespaces und importieren Sie sie mit use-Anweisungen. Du übst PHP Academy mit praktischem Code, den du direkt im Browser ausführst, und ein 24/7 KI-Tutor beantwortet deine Fragen während du die Lektion bearbeitest.

Brauche ich Erfahrung, um PHP Academy zu starten?

Keine Vorkenntnisse erforderlich. PHP Academy auf CoddyKit ist für Anfänger bis fortgeschrittene Lernende strukturiert, sodass du hier starten oder von Anfang an beginnen und in deinem eigenen Tempo voranschreiten kannst. Dies ist Lektion 1 von 4.

Wie lange dauert die Lektion „Namespaces deklarieren und verwenden“?

Die meisten CoddyKit-Lektionen dauern etwa 5–10 Minuten. Jede ist kompakt und interaktiv, sodass du stetig Fortschritte machst und genau dort weitermachst, wo du aufgehört hast – im Web und in der App.

Kann ich in dieser PHP Academy-Lektion Code schreiben und ausführen?

Ja. Jede PHP Academy-Lektion enthält einen integrierten Code-Editor, sodass du echten Code direkt in deinem Browser schreibst und ausführst und sofort KI-Feedback erhältst — ohne lokale Einrichtung erforderlich.

Alle Lektionen in diesem Kurs

  1. Namespaces deklarieren und verwenden
  2. Verschachtelte Namespaces und Aliase
  3. PSR-4-Standard für Autoloading
  4. Autoloader registrieren
← Zurück zu PHP Academy