⊗ppOpNsCU 101 of 107 menu

Use käsu ja nimeruumide kasutamine OOP-s PHP-s

Oletame, et meil on järgmine klass Data:

<?php namespace \Core\Admin; class Data { public function __construct($num) { } } ?>

Oletame ka, et on olemas klass Page, mis loob iseses objektid klassist Data:

<?php namespace Users; class Page { public function __construct() { $data1 = new \Core\Admin\Data('1'); $data2 = new \Core\Admin\Data('2'); } } ?>

Nagu näete, on mõlemad meie klassid täiesti erinevates nimeruumides, seetõttu klassi Data kutseid ei saa lihtsustada sarnaselt sellele, kuidas me seda tegime eelmises õppetükis. Need kutsed on siiski väga pikad ja ebamugavad, kuna igas klassi Data kutses tuleb määrata selle pikk nimeruum.

Sellise probleemi lahendamiseks on olemas spetsiaalne käsk use. Selle käsu abil piisab klassist üks kord ühendust võtmast tema täieliku nime järgi ja pärast seda saab sellele klassile lihtsalt viidata klassi nime järgi. Vaadake näidet:

<?php namespace Users; use \Core\Admin\Data; // ühendame klassi class Page extends Controller { public function __construct() { $data1 = new Data('1'); // kutsume lihtsalt nime järgi $data2 = new Data('2'); // kutsume lihtsalt nime järgi } } ?>

Lihtsustage järgnevat koodi kasutades use käsku:

<?php namespace Project; class Test { public function __construct() { // Loome 3 objekti ühest klassist: $data1 = new \Core\Users\Data('user1'); $data2 = new \Core\Users\Data('user3'); $data3 = new \Core\Users\Data('user3'); } } ?>

Antud on järgmised klassid:

<?php namespace Core\Admin; class Controller { } ?>
<?php namespace Users; class Page extends \Core\Admin\Controller { } ?>

Lihtsustage klassi pärimise koodi, rakendades use käsku.

Eesti
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Me kasutame saidi toimimiseks, analüüsi ja personaliseerimiseks küpsiseid. Andmete töötlemine toimub vastavalt Privaatsuspoliitikale.
nõustu kõigega häälesta keeldu