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

PHP রেফারেন্স দিয়ে রিটার্ন (Return by Reference)


পরিচিতি

PHP-তে, একটি ফাংশন রেফারেন্স দিয়ে রিটার্ন করতে পারে। এটি খুব কাজের কোনো ভেরিয়েবলের সাথে কোন রেফারেন্স বাউন্ড থাকবে তা জানার জন্য। রেফারেন্স দিয়ে রিটার্ন করার ফাংশন ডিফাইন করতে এর নাম & সাইন দিয়ে প্রিফিক্স করতে হয়।

উদাহরণ

নিচের উদাহরণে, myfunction() রেফারেন্স দিয়ে রিটার্ন করার জন্য ডিফাইন করা হয়েছে। এতে একটি স্ট্যাটিক ভেরিয়েবল রয়েছে যেন রেফারেন্স রিটার্ন করা হয় এবং একটি গ্লোবাল ভেরিয়েবলে অ্যাসাইন করা হয়। লোকাল স্ট্যাটিক ভেরিয়েবলের মান বাইরে এর রেফারেন্স পরিবর্তন করলে সেটিও চেঞ্জ হয়।

উদাহরণ

<?php
function &myfunction(){
    static $x=10;
    echo "x Inside function: ",$x,"\n";
    return $x;
}
$a=&myfunction(); // ফাংশনে x এর রেফারেন্স ধারণ করে
echo "returned by reference: ", $a, "\n";
$a=$a+10; // ফাংশন ভেতরের ভেরিয়েবলও ইনক্রিমেন্ট হয়
$a=&myfunction();
?>

আউটপুট

এই উদাহরণ নিচের আউটপুট দেবে—

x Inside function: 10
returned by reference: 10
x Inside function: 20

রেফারেন্স দিয়ে রিটার্নিং মেথড (Method returning reference)

এক ক্লাসও এমন মেথড রাখতে পারে যা রেফারেন্স দিয়ে রিটার্ন করে। এটি ক্লাস বাইর থেকে প্রাইভেট ইনস্ট্যান্স ভেরিয়েবলের মান পরিবর্তন করতে সক্ষম করে।

উদাহরণ

<?php
class myclass{
    private $val;
    function __construct($x){
        $this->val=$x;
    }
    function &getbyref(){
        return $this->val;
    }
    function getbyval(){
        return $this->val;
    }
}
$a=new myclass(10);
$b=&$a->getbyref();
$b=100;
echo "Value of private property: ", $a->getbyval();
?>

আউটপুট

উপরের স্ক্রিপ্টের ফলাফল—

Value of private property: 100

  1. PHP mt_srand() ফাংশন

  2. PHP mt_getrandmax() ফাংশন

  3. PHP min() ফাংশন

  4. PHP max() ফাংশন