PHP හි OOP හි නාමාවකාශ වාක්ය ඛණ්ඩය
වර්ගයකට නාමාවකාශයක් පැවරීමට, එම
වර්ගය ගබඩා කර ඇති ගොනුවේ පළමු පේළියේ
namespace යන විධානය ලිවිය යුතුය,
ඊට පසුව හිස්තැනකින් - එම නාමාවකාශයේ
නම.
වර්ගයක් යම් නාමාවකාශයකට අයත් වේ නම්, වර්ගයේ වස්තුවක් නිර්මාණය කිරීම සඳහා වර්ගයේ නම පමණක් නොව, එහි නාමාවකාශය ද, පසුපස ඇල ඉරකින් වෙන් කර, නිර්දේශ කිරීමට සිදුවේ. අපි උදාහරණයක් බලමු.
අප සතුව Page වර්ගයක් ඇති අතර, එය ඕනෑම
නාමාවකාශයකට අයත් නොවේ යැයි සිතමු.
එවිට මෙම වර්ගයේ වස්තුව අපි පහත පරිදි
නිර්මාණය කරමු:
<?php
$page = new Page;
?>
දැන් මෙම වර්ගය Admin නාමාවකාශයට අයත් යැයි
සිතමු. මෙම අවස්ථාවේ දී, මෙම වර්ගයේ වස්තුව
අපි දැන් මෙලෙස නිර්මාණය කරමු:
<?php
$page = new \Admin\Page;
?>
පෙර විස්තර කර ඇති වර්ග ගැටුම් වළක්වා ගැනීම සඳහා, පරිශීලකයින් සඳහා වන වර්ග සහ පරිපාලකයින් සඳහා වන වර්ග විවිධ නාමාවකාශවලට වෙන් කරමු.
/admin/page.php ගොනුවෙන් Page වර්ගය සඳහා
Admin නාමාවකාශය නිර්දේශ කරමු:
<?php
namespace Admin;
class Page
{
}
?>
/users/page.php ගොනුවෙන් Page වර්ගය සඳහා
Users නාමාවකාශය නිර්දේශ කරමු:
<?php
namespace Users;
class Page
{
}
?>
දැන් අපි /index.php ගොනුවේ
Page වර්ග දෙකේම වස්තු
නිර්මාණය කරමු:
<?php
require_once '/admin/page.php';
require_once '/users/page.php';
$adminPage = new \Admin\Page;
$usersPage = new \Users\Page;
?>
ඔබ සතුව core ෆෝල්ඩරය සහ
project ෆෝල්ඩරය ඇතැයි සිතමු.
ෆෝල්ඩර එක් එක් තුළ තමන්ගේම
Controller වර්ගයක් ඇත.
මෙම වර්ග විවිධ නාමාවකාශවලට අයත් වන පරිදි සකසන්න.
index.php ගොනුවේ වර්ග දෙකේම වස්තු
නිර්මාණය කරන්න.