⊗ppOpNsCU 101 of 107 menu

Die use-opdrag en naamruimtes in OOP in PHP

Gestel ons het die volgende klas Data:

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

Gestel daar is ook 'n klas Page wat binne-in homself voorwerpe van die klas Data skep:

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

Soos jy kan sien, is albei ons klasse in heel ander naamruimtes, daarom kan die oproepe na die klas Data nie vereenvoudig word nie, soos ons in die vorige les gedoen het. Hierdie oproepe is egter baie lank en ongerieflik, want in elke oproep na die klas Data moet sy lang naamruimte gespesifiseer word.

Vir die oplossing van hierdie soort probleem bestaan daar 'n spesiale opdrag use. Met behulp van hierdie opdrag is dit genoeg om een keer die klas volgens sy volledige naam te koppel, en daarna kan na hierdie klas eenvoudig volgens die klasnaam verwys word. Kyk na die voorbeeld:

<?php namespace Users; use \Core\Admin\Data; // koppel die klas class Page extends Controller { public function __construct() { $data1 = new Data('1'); // roep eenvoudig volgens naam $data2 = new Data('2'); // roep eenvoudig volgens naam } } ?>

Vereenvoudig die volgende kode met die gebruik van use:

<?php namespace Project; class Test { public function __construct() { // Skep 3 voorwerpe van een klas: $data1 = new \Core\Users\Data('user1'); $data2 = new \Core\Users\Data('user3'); $data3 = new \Core\Users\Data('user3'); } } ?>

Die volgende klasse word gegee:

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

Vereenvoudig die kode van klas-oorerwing deur die opdrag use toe te pas.

Afrikaans
AzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικά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
Ons gebruik koekies vir die werking van die webwerf, ontleding en personalisering. Die verwerking van data geskied volgens die Privaatheidsbeleid.
aanvaar alles instel verwerp