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

PHP এলিয়াসিং/ইম্পোর্টিং নেমস্পেস


ভূমিকা

নেমস্পেসের একটি গুরুত্বপূর্ণ বৈশিষ্ট্য হলো এক্সটার্নাল ফুলি কোয়ালিফাইড নামকে একটি এলিয়াস দিয়ে রেফার করা বা ইম্পোর্ট করা। PHP নেমস্পেস নিচের ধরনের এলিয়াসিং বা ইম্পোর্টিং সাপোর্ট করে:

  • একটি ক্লাস নাম এলিয়াস করা
  • একটি ইন্টারফেস নাম এলিয়াস করা
  • একটি নেমস্পেস নাম এলিয়াস করা
  • ফাংশন এবং কনস্ট্যান্ট নাম এলিয়াস বা ইম্পোর্ট করা

PHP-তে, এলিয়াসিং use অপারেটর দিয়ে সম্পন্ন করা হয়।

use অপারেটর

উদাহরণ

#test1.php
<?php
namespace mynamespace;
function sayhello(){
    echo "Hello from mynamespace\n";
}
sayhello();
namespace mynewspace;
function sayhello(){
    echo "Hello from my new space\n";
}
sayhello();
use \mynewspace\sayhello as hello;
?>

আউটপুট

Hello from mynamespace
Hello from my new space

একাধিক use স্টেটমেন্ট কম্বাইন করা

উদাহরণ

<?php
namespace mynamespace;
class myclass{
    function test() { echo "myclass in mynamespace\n"; }
}
class testclass{
    static function test() { echo "testclass in mynamespace\n"; }
}
use \mynamespace\myclass as myclass, \mynamespace\testclass;
$a=new myclass();
$a->test();
$b=new \mynamespace\testclass();
$b->test();
?>

আউটপুট

myclass in mynamespace
testclass in mynamespace

ইম্পোর্টিং এবং ডাইনামিক নাম

ইম্পোর্ট করা ক্লাসের নাম ডাইনামিকভাবে সাবস্টিটিউট করা

উদাহরণ

<?php
namespace mynamespace;
class myclass{
    function test() { echo "myclass in mynamespace\n"; }
}
class testclass{
    static function test() { echo "testclass in mynamespace\n"; }
}
use \mynamespace\myclass as myclass;
$a=new myclass;
$b='myclass';
$c=new $b;
?>

use কিওয়ার্ড অবশ্যই আউটারমোস্ট বা গ্লোবাল স্কোপে ডিক্লেয়ার করতে হবে, বা নেমস্পেস ডিক্লেয়ারেশনের ভিতরে। ইম্পোর্টিং প্রসেস কম্পাইল টাইমে হয়, রানটাইমে নয়। তাই এটি ব্লক-স্কোপড হতে পারে না। নিচের ব্যবহার অবৈধ হবে:

উদাহরণ

<?php
function myfunction(){
    use myspace\myclass;
    //
    //
}
?>

ইনক্লুডেড ফাইলগুলো প্যারেন্ট ফাইলের ইম্পোর্টিং রুল ইনহেরিট করবে না কারণ সেগুলো পার-ফাইল বেসিসে থাকে।


  1. PHP max() ফাংশন

  2. PHP log10() ফাংশন

  3. PHP log() ফাংশন

  4. PHP lcg_value() ফাংশন