Нужна помощь донатом
для написания учебников Kotlin, Java, C++, C#, Go, Rust, Dart
подробности по ссылке
⊗ppOpNsCA 104 of 107 menu
◀ ▶

PHP да ООП да Номлар Фазосида Классларнинг Лакаблари

Фарз қилайлик, бизда турли номлар фазосига тегишли иккита Data класси мавжуд. Фарз қилайлик, бирор классда бизга шу икки класснинг ҳам объектлари керак:

<?php namespace Project; class Test { public function __construct() { $data1 = new \Core\Users\Data; // объект яратамиз $data2 = new \Core\Admin\Data; // объект яратамиз } } ?>

Фарз қилайлик, биз use буйруғи орқали класслар чақирувларни соддалаштиришга қарор қилдик. Бунда бизни муаммо кутмоқда: икки класснинг ҳам номи Data, демак, бизда номлар зиддияті пайдо бўлади:

<?php namespace Project; // Номлар зиддияті пайдо бўлади: use \Core\Users\Data; // биринчи классни улаймиз use \Core\Admin\Data; // иккинчи классни улаймиз class Test { public function __construct() { $data1 = new Data; $data2 = new Data; } } ?>

Бу муаммони ҳал қилиш учун махсус as буйруғи мавжуд бўлиб, у қуйилаётган классга лакаб беришга имкон беради - ушбу файлда шундай ном остида мавжуд бўлади. Келинг 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; } } ?>

Қуйидаги кодни use дан фойдаланиб соддалаштиринг:

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

Қуйидаги кодни use дан фойдаланиб соддалаштиринг:

<?php namespace Project\Data; class Test { public function __construct() { $pageController = new \Project\Data\Controller\Page; $pageModel = new \Project\Data\Model\Page; } } ?>
← →
↑
Ўзбек▼
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeOʻzbekTiếng Việt
Биз веб-сайт ишлаши, таҳлил қилиш ва персоналлаштириш учун кукидан фойдаланамиз. Маълумотларни қайта ишлаш Махфийлик сиёсатига мувофиқ амалга оширилади.
ҳаммасини қабул қилиш мослаштириш рад этиш