Geneste namespaces en aliassen
Maak subnamespaces en gebruik aliassen om overbodig lange namen te voorkomen.
Geneste namespaces en aliassen is een gratis PHP Academy-les op CoddyKit. Dit is les 2 van 4. Je kunt de volledige les hieronder gratis lezen en daarna in de browser praktisch oefenen met een ingebouwde code-editor en een AI-begeleider die 24/7 beschikbaar is. Deze les maakt deel uit van het leertraject PHP Academy. Je voortgang wordt gesynchroniseerd op het web en in de CoddyKit-app. De cursus PHP Academy bevat in totaal 4 lessen.
Voorbeeld van een geneste naamruimte
PHP-naamruimten kunnen diep genest zijn en uit meerdere door backslashes gescheiden segmenten bestaan.
<?php
namespace Vendor\Package\Http\Middleware;
class AuthMiddleware {
public function handle(): void {}
}Waarom aliassen?
Lange paden van naamruimten maken code omslachtig. Met aliassen kun je naar een klasse verwijzen met een kortere naam die je zelf kiest.
Een alias voor een klasse maken
Gebruik use … as Alias om een import voor het huidige bestand een andere naam te geven.
<?php
namespace App\Controllers;
use App\Infrastructure\Database\MySQLConnection as DB;
class UserController {
public function __construct(private DB $db) {}
}Een alias voor een naamruimtevoorvoegsel maken
Je kunt een naamruimtevoorvoegsel een alias geven om diep geneste verwijzingen korter te maken.
<?php
use App\Domain\Orders\Repositories as OrderRepo;
$repo = new OrderRepo\EloquentOrderRepository();Conflicten tussen klassennamen oplossen
Wanneer twee pakketten een klasse met dezelfde korte naam definiëren, geef je een van beide een alias.
<?php
use League\Flysystem\Filesystem;
use Illuminate\Filesystem\Filesystem as LaravelFS;
$fs1 = new Filesystem(/* adapter */);
$fs2 = new LaravelFS();Gegroepeerde use met aliassen
Gegroepeerde use-blokken ondersteunen ook aliassen per symbool.
<?php
use App\Models\{User, Post as Article};Diep geneste structuren
DDD-projecten uit de praktijk hebben vaak naamruimten met vier of meer segmenten, bijvoorbeeld App\Domain\Billing\Services\InvoiceGenerator.
Bereik van aliassen
Aliassen zijn beperkt tot het bestand. Een alias die in het ene bestand is gedefinieerd, heeft geen effect in een ander bestand.
Twee loggerbibliotheken
Voorbeeld: zowel Monolog als een aangepaste logger gebruiken.
<?php
use Monolog\Logger;
use App\Logging\Logger as AppLogger;
$monolog = new Logger("channel");
$app = new AppLogger();Aliassen voor functies en constanten
Je kunt ook geïmporteerde functies en constanten een alias geven.
<?php
use function App\Helpers\formatMoney as money;
echo money(1999); // "€19.99"Aanbevolen werkwijzen
Houd aliassen betekenisvol. Gebruik aliassen om conflicten op te lossen, niet alleen om typwerk te besparen ten koste van de leesbaarheid.
Samenvatting
Geneste naamruimten weerspiegelen je mappenstructuur. Aliassen lossen naamconflicten op en maken code minder omslachtig — beide gebruiken use … as bovenaan het bestand.
Korte controle
Hoe geef je een geïmporteerde klasse een alias?
Leer PHP met een AI-tutor — gratis
Schrijf echte code en voer die uit in je browser, krijg direct hulp van een AI-tutor die 24/7 beschikbaar is en ga verder waar je gebleven bent op het web of in de app.
- Cursussen
- 49
- Lessen
- 195
Veelgestelde vragen
Is de les “Geneste namespaces en aliassen” gratis?
Ja — de volledige tekst van “Geneste namespaces en aliassen” kun je hier gratis op het web lezen. Als je interactief wilt oefenen met een ingebouwde code-editor en een AI-begeleider die 24/7 beschikbaar is, en de rest van de cursus PHP Academy wilt ontgrendelen, kun je upgraden naar CoddyKit PRO. De cursus PHP Academy bevat in totaal 4 lessen.
Wat leer ik in “Geneste namespaces en aliassen”?
Maak subnamespaces en gebruik aliassen om overbodig lange namen te voorkomen. Je oefent met PHP Academy door code rechtstreeks in de browser uit te voeren. Een AI-begeleider die 24/7 beschikbaar is beantwoordt je vragen terwijl je de les doorwerkt.
Heb ik ervaring nodig om met PHP Academy te beginnen?
Ervaring vooraf is niet nodig. PHP Academy op CoddyKit is opgebouwd voor beginners tot gevorderden, zodat je hier of bij het begin kunt starten en in je eigen tempo kunt leren. Dit is les 2 van 4.
Hoe lang duurt de les “Geneste namespaces en aliassen”?
De meeste lessen van CoddyKit duren ongeveer 5–10 minuten. Elke les is kort en interactief, zodat je gestaag vooruitgaat en op het web en in de app precies verdergaat waar je was gebleven.
Kan ik code schrijven en uitvoeren in deze les over PHP Academy?
Ja. Elke les over PHP Academy bevat een ingebouwde code-editor, zodat je rechtstreeks in je browser echte code kunt schrijven en uitvoeren en direct feedback van AI krijgt — lokale installatie is niet nodig.
Alle lessen in deze cursus
- Namespaces declareren en gebruiken
- Geneste namespaces en aliassen
- PSR-4-autoloadingstandaard
- Autoloaders registreren