⊗ppOpNsSN 97 of 107 menu

Vardų erdvių pakopos OOP PHP

Tarkime, dabar turime sudėtingesnę situaciją: administrui reikia sukurti dvi klases Page - vieną su puslapio duomenimis, o antrą - su šių duomenų atvaizdavimu. Tarkime, pirmoji klasė yra faile /admin/data/page.php, o antroji - faile /admin/view/page.php.

Ankstesnėse pamokose jau nusprendėme, kad visos klasės iš aplanko admin priklausys vardų erdvei Admin. Tačiau dabar šioje pačioje erdvėje turime dviejų klasių konfliktą. Problemai spręsti galima sukurti papildomas vardų erdvių pakopas. Pavyzdžiui, galima sukurti vardų erdvę Admin, o joje pakopas Data ir View. Tokiu atveju šių pakopų pavadinimai tiesiog rašomi per atvirkštinį pasvirąjį brūkšnį - tiek nustatant vardų erdvę, tiek kuriant klasės objektą.

Čia reikia patikslinti, kad pakopų įdėjimo lygis neribojamas (galima kurti pakopas pakopose ir taip toliau).

Taigi, užbaigkime mūsų aukščiau aprašytą pavyzdį. Klasei Page iš failo /admin/data/page.php nurodykime vardų erdvę Admin\Data:

<?php namespace Admin\Data; class Page { } ?>

Klasei Page iš failo /admin/view/page.php nurodykime vardų erdvę Admin\View:

<?php namespace Admin\View; class Page { } ?>

Sukurkime mūsų klasių objektus:

<?php require_once '/admin/data/page.php'; require_once '/admin/view/page.php'; $adminDataPage = new \Admin\Data\Page; $adminViewPage = new \Admin\View\Page; ?>

Tarkime, jūs turite aplanką modules/cart. Padarykite taip, kad visos klasės iš šio aplanko priklausytų vardų erdvei Modules\Cart.

Tarkime, jūs turite aplanką modules/shop/cart/. Padarykite taip, kad visos klasės iš šio aplanko priklausytų vardų erdvei Modules\Shop\Cart.

Lietuvių
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Mes naudojame slapukus svetainės veikimui, analizei ir personalizavimui. Duomenų apdorojimas vyksta pagal Privatumo politiką.
priimti visus nustatyti atšaukti