ভূমিকা
যখন PHP পার্সার একটি আনকোয়ালিফাইড আইডেন্টিফায়ার যেমন ক্লাস বা ফাংশন নাম встреча করে, সেটি কারেন্ট নেমস্পেসে রেজোলভ করে। তাই, PHP-এর প্রিডিফাইন্ড ক্লাসগুলো অ্যাক্সেস করতে, তাদের ফুলি কোয়ালিফাইড নাম দিয়ে \ প্রিফিক্স করে রেফার করতে হয়।
বিল্ট-ইন ক্লাস ব্যবহার
নিচের উদাহরণে, একটি নতুন ক্লাস প্রিডিফাইন্ড stdClass-কে বেস ক্লাস হিসেবে ব্যবহার করে। আমরা এটি \ প্রিফিক্স করে গ্লোবাল ক্লাস হিসেবে নির্দিষ্ট করি:
উদাহরণ
<?
namespace testspace;
class testclass extends \stdClass{
//
}
$obj=new testclass();
$obj->name="Raju";
echo $obj->name;
?>
ইনক্লুডেড ফাইলগুলো ডিফল্টভাবে গ্লোবাল নেমস্পেসে থাকে। তাই, ইনক্লুডেড ফাইল থেকে একটি ক্লাস রেফার করতে, সেটি \ দিয়ে প্রিফিক্স করতে হবে।
উদাহরণ
#test1.php
<?php
class myclass{
function hello(){ echo "Hello World\n";}
}
?>
এই ফাইলটি অন্য একটি PHP স্ক্রিপ্টে ইনক্লুড করা হয়েছে এবং এর ক্লাস \ দিয়ে রেফার করা হয়েছে।
যখন এই ফাইলটি অন্য একটি নেমস্পেসে ইনক্লুড করা হয়:
উদাহরণ
#test2.php
<?php
include 'test1.php';
class testclass extends \myclass{
function hello(){
echo "Hello PHP\n";
}
}
$obj1=new \myclass();
$obj1->hello();
$obj2=new testclass();
$obj2->hello();
?>
আউটপুট
এটি নিচের আউটপুট প্রিন্ট করবে:
Hello World Hello PHP