⊗ppOpNsCU 101 of 107 menu

Команда use и пространства имен в ООП в PHP

Нека имаме следнава класа Data:

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

Нека имаме и класа Page, која создава внатре објекти од класата Data:

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

Како што можете да видите, двете наши класи се наоѓаат во сосема различни именски простори, затоа повиците до класата Data не може да се поедностават, на сличен начин како што правевме во претходната лекција. Овие повици, сепак, се многу долги и незгодни, бидејќи во секој повик на класата Data мора да се наведе нејзиниот долг именски простор.

За решавање на ваквиот проблем постои специјална команда use. Со помош на оваа команда доволно е еднаш да се поврзе класата по нејзиното полно име, и после тоа ќе може да се пристапува до оваа класа едноставно по името на класата. Погледнете го примерот:

<?php namespace Users; use \Core\Admin\Data; // ја поврзуваме класата class Page extends Controller { public function __construct() { $data1 = new Data('1'); // повикуваме едноставно по име $data2 = new Data('2'); // повикуваме едноставно по име } } ?>

Поедноставете го следниов код со користење на use:

<?php namespace Project; class Test { public function __construct() { // Создаваме 3 објекти од една класа: $data1 = new \Core\Users\Data('user1'); $data2 = new \Core\Users\Data('user3'); $data3 = new \Core\Users\Data('user3'); } } ?>

Дадени се следниве класи:

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

Поедноставете го кодот за наследување на класата, применувајќи команда use.

Македонски
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Ние користиме колачиња за работата на веб-страната, анализа и персонализација. Обработката на податоци се врши во согласност со Политиката за приватност.
прифати ги сите прилагоди одбиј