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;
}
}
?>