কম্পিউটার টিউটোরিয়াল

PHP namespace কিওয়ার্ড এবং __NAMESPACE__ কনস্ট্যান্ট


ভূমিকা

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

  1. PHP-এ FILTER_SANITIZE_SPECIAL_CHARS কনস্ট্যান্ট

  2. PHP-এ FILTER_SANITIZE_NUMBER_INT কনস্ট্যান্ট

  3. PHP-এ FILTER_SANITIZE_NUMBER_FLOAT কনস্ট্যান্ট

  4. PHP-এ FILTER_VALIDATE_FLOAT কনস্ট্যান্ট