⊗ppOpNsCA 104 of 107 menu

Klassealias for navnerum i OOP i PHP

Lad os sige, at vi har to klasser Data, der tilhører forskellige navnerum. Lad os sige, at vi i en bestemt klasse har brug for objekter fra begge disse klasser:

<?php namespace Project; class Test { public function __construct() { $data1 = new \Core\Users\Data; // opretter objekt $data2 = new \Core\Admin\Data; // opretter objekt } } ?>

Lad os sige, at vi besluttede at forenkle kald af klasser via kommandoen use. I dette tilfælde venter der os et problem: begge klasser har navnet Data, og det betyder, at vi vil have en navnekonflikt:

<?php namespace Project; // Der vil være navnekonflikt: use \Core\Users\Data; // tilslutter den første klasse use \Core\Admin\Data; // tilslutter den anden klasse class Test { public function __construct() { $data1 = new Data; $data2 = new Data; } } ?>

For at løse dette problem findes der en speciel kommando as, der tillader at tildele den tilsluttede klasse et alias - et navn, under hvilket denne klasse vil være tilgængelig i denne fil. Lad os udføre omdøbning af vores Data-klasser:

<?php namespace Project; use \Core\Users\Data as UsersData; use \Core\Admin\Data as AdminData; class Test { public function __construct() { $data1 = new UsersData; $data2 = new AdminData; } } ?>

Forenkl følgende kode ved hjælp af use:

<?php namespace Project; class Test { public function __construct() { $pageController = new \Resource\Controller\Page; $pageModel = new \Resource\Model\Page; } } ?>

Forenkl følgende kode ved hjælp af use:

<?php namespace Project\Data; class Test { public function __construct() { $pageController = new \Project\Data\Controller\Page; $pageModel = new \Project\Data\Model\Page; } } ?>
Dansk
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Vi bruger cookies til webstedets funktion, analyse og personalisering. Behandling af data foregår i henhold til Fortrolighedspolitikken.
accepter alle tilpas afvis