⊗ppOpNsCA 104 of 107 menu

Pseudonimet e Klasave për Hapësirat e Emrave në OOP në PHP

Le të supozojmë se kemi dy klasa Data, që i përkasin hapësirave të ndryshme të emrave. Le të themi se në një klasë të caktuar na duhen objektet e të dy këtyre klasave:

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

Le të themi se kemi vendosur të thjeshtojmë thirrjet e klasave përmes komandës use. Në këtë rast, ne do të përballemi me një problem: të dyja klasat kanë emrin Data, dhe kjo do të thotë se do të kemi një konflikt emërish:

<?php namespace Project; // Do të ketë konflikt emërish: use \Core\Users\Data; // lidhim klasën e parë use \Core\Admin\Data; // lidhim klasën e dytë class Test { public function __construct() { $data1 = new Data; $data2 = new Data; } } ?>

Për zgjidhjen e këtij problemi ekziston një komandë e veçantë as, e cila lejon të caktohet klasës që po lidhet një pseudonim - një emër, nën të cilin ky klasë do të jetë i disponueshëm në këtë skedar. Le të kryejmë riemërtimin e klasave tona Data:

<?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; } } ?>

Thjeshtoni kodin e mëposhtëm duke përdorur use:

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

Thjeshtoni kodin e mëposhtëm duke përdorur use:

<?php namespace Project\Data; class Test { public function __construct() { $pageController = new \Project\Data\Controller\Page; $pageModel = new \Project\Data\Model\Page; } } ?>
Shqip
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Ne përdorim cookie për funksionimin e sajtit, analizën dhe personalizimin. Përpunimi i të dhënave bëhet në përputhje me Politikën e Privatësisë.
prano të gjitha konfiguro refuzo