ভূমিকা
PHP-তে, namespace কিওয়ার্ড একটি নেমস্পেস ডিফাইন করতে ব্যবহৃত হয়। এটি একটি অপারেটর হিসেবেও ব্যবহৃত হয় কারেন্ট নেমস্পেসের নির্দিষ্ট এলিমেন্ট অ্যাক্সেস রিকোয়েস্ট করার জন্য। __NAMESPACE__ কনস্ট্যান্ট কারেন্ট নেমস্পেসের নাম রিটার্ন করে।
__NAMESPACE__ কনস্ট্যান্ট
একটি নামকৃত নেমস্পেস থেকে, __NAMESPACE__ এর নাম রিটার্ন করে, গ্লোবাল এবং আননemd নেমস্পেসের জন্য খালি স্ট্রিং রিটার্ন করে।
উদাহরণ
#test1.php <?php echo "name of global namespace : " . __NAMESPACE__ . "\n"; ?>
আউটপুট
একটি খালি স্ট্রিং রিটার্ন করা হয়:
name of global namespace :
নামকৃত নেমস্পেসের জন্য, এর নাম রিটার্ন করা হয়:
উদাহরণ
<?php namespace myspace; echo "name of current namespace : " . __NAMESPACE__ . "\n"; ?>
আউটপুট
name of current namespace : myspace
ডাইনামিক নাম নির্মাণ
__NAMESPACE__ ডাইনামিকভাবে নাম তৈরি করতে উপযোগী।
উদাহরণ
<?php
namespace MyProject;
class myclass {
function hello(){echo "hello world";}
};
$cls="myclass";
function get($cls){
$a = __NAMESPACE__ . '\\' . $cls;
return new $a;
}
get($cls)->hello();
?>
আউটপুট
উপরোক্ত কোড নিচের আউটপুট দেখায়:
hello World
namespace অপারেটর
namespace কিওয়ার্ড ক্লাসের জন্য self অপারেটরের সমতুল্য হিসেবে ব্যবহার করা যেতে পারে কারেন্ট নেমস্পেস বা সাব-নেমস্পেস থেকে স্পষ্টভাবে একটি এলিমেন্ট রিকোয়েস্ট করার জন্য।
উদাহরণ
<?php
namespace Myspace;
class myclass {
function hello(){echo "hello Myspace";}
}
$a = new namespace\myclass();
$a->hello();
?>
আউটপুট
উপরোক্ত কোড নিচের আউটপুট দেখায়:
hello Myspace
গ্লোবাল নেমস্পেস থেকে, namespace অপারেটর কারেন্ট নেমস্পেসের ফাংশন/ক্লাসকে বোঝায় যা গ্লোবাল নেমস্পেস।
উদাহরণ
<?php
class myclass {
function hello(){echo "hello global space";}
}
$a = new namespace\myclass();
$a->hello();
?>
আউটপুট
উপরোক্ত কোড নিচের আউটপুট দেখায়:
hello global space