ভূমিকা
.php এক্সটেনশন वाले একটি ফাইলে একাধিক নেমস্পেস ডিফাইন করা যায়। এর জন্য দুটি ভিন্ন পদ্ধতি নির্ধারিত: কম্বিনেশন সিনট্যাক্স এবং ব্র্যাকেটেড সিনট্যাক্স।
কম্বিনেশন সিনট্যাক্স দিয়ে একাধিক নেমস্পেস
এই উদাহরণে দুটি নেমস্পেস একে অপরের নিচে ডিফাইন করা হয়েছে। প্রথম নেমস্পেসের রিসোর্সগুলো দ্বিতীয় ডেফিনিশন শুরু হওয়া পর্যন্ত উপলব্ধ থাকে। আপনি যদি কোনো নেমস্পেসকে কারেন্ট হিসেবে লোড করতে চান, use কিওয়ার্ড দিয়ে লোড করুন।
উদাহরণ
<?php
namespace myspace1;
function hello() {
echo "Hello World from space1\n";
}
echo "myspace1 : ";
hello();
namespace myspace\space2;
function hello(){
echo "Hello World from space2\n";
}
echo "myspace2 : ";
hello();
use myspace1;
hello();
use myspace2;
hello();
?>
আউটপুট
উপরোক্ত কোড নিচের আউটপুট দেখায়:
myspace1 : Hello World from space1 myspace2 : Hello World from space2 Hello World from space2 Hello World from space2
ব্র্যাকেটেড সিনট্যাক্স দিয়ে একাধিক নেমস্পেস
নিচের উদাহরণে দুটি নেমস্পেস তাদের স্কোপ কার্লি ব্র্যাকেট দিয়ে চিহ্নিত করে ডিফাইন করা হয়েছে:
উদাহরণ
<?php
namespace myspace1{
function hello() {
echo "Hello World from space1\n";
}
echo "myspace1 : ";
hello();
}
namespace myspace\space2{
function hello(){
echo "Hello World from space2\n";
}
echo "myspace2 : ";
hello();
}
?>
আউটপুট
উপরোক্ত কোড নিচের আউটপুট দেখায়:
myspace1 : Hello World from space1 myspace2 : Hello World from space2
একাধিক নেমস্পেসের জন্য ব্র্যাকেটেড সিনট্যাক্স কম্বাইনড সিনট্যাক্সের চেয়ে রিকমেন্ডেড। ব্র্যাকেটেড এবং আনব্র্যাকেটেড নেমস্পেস মিক্স করা যায় না। একটি ওপেনিং declare স্টেটমেন্ট বাদে, নেমস্পেস ব্র্যাকেটের বাইরে অন্য কোনো PHP কোড থাকতে পারে না। যদি আপনাকে গ্লোবাল নেমস্পেস নামকৃত নেমস্পেসের সাথে কম্বাইন করতে হয়, শুধু ব্র্যাকেটেড সিনট্যাক্স অনুমোদিত।