Comment

PHP ফাংশন (Functions)

PHP ফাংশন প্যারামিটার (function parameters)

Estimated reading: 2 minutes 17 views Contributors

সারাংশ: এই টিউটোরিয়ালে, আপনি function parameters সম্পর্কে শিখবেন এবং value আর reference দ্বারা arguments pass করবেন।

PHP function parameters পরিচিতি

একটি ফাংশনে শূন্য বা তার বেশি প্যারামিটার থাকতে পারে:

<?php
function function_name(parameter_list) 
{
}

যখন একটি ফাংশন -এর একাধিক প্যারামিটার থাকে, তখন আপনি কমা ( ,) ব্যবহার করে তাকে আলাদা করতে হবে।

নিম্নলিখিত উদাহরণটি concat() ফাংশনকে ডিফাইন করে, যা দুটি স্ট্রিংকে একটিতে সংযুক্ত করে:

<?php
function concat($str1, $str2)
{
	return $str1 . $str2;
}

 concat() ফাংশনের দুটি প্যারামিটার রয়েছে। যেমনঃ-  $str এবং $str2।

যখন concat() ফাংশন কল করবেন, তখন দুটি আর্গুমেন্ট পাস করতে হবে, যেন প্যারামিটার-এর সাথে মিলে যায়।

উদাহরণ স্বরূপ:

<?php
function concat($str1, $str2)
{
	return $str1 . $str2;
}

$greeting = concat('Welcome ', 'Admin');
echo $greeting;

এই উদাহরণে, প্রথম আমরা $str1 আর্গুমেন্ট নেবে ‘Welcome’, এবং দ্বিতীয়  $str2 আর্গুমেন্ট ‘Admin’ নেবে।

PHP ভুল দেখাবে যদি function-এ পাস করা আর্গুমেন্টের সংখ্যা, প্যারামিটারের সংখ্যার চেয়ে কম হয়।

উদাহরণ স্বরূপ:

<?php

function concat($str1, $str2)
{
	return $str1 . $str2;
}


$greeting = concat('Welcome');
echo $greeting;

যখন একটি ফাংশনে একাধিক আর্গুমেন্ট পাস করেন, তখন আপনি কোডকে আরও পাঠযোগ্য করতে আর্গুমেন্টের লিস্ট ভার্টিক্যালি ব্রেক দিতে পারেন:

<?php

function concat($str1, $str2)
{
	return $str1 . $str2;
}

$greeting = concat(
	'Welcome ',
	'Home'
);

echo $greeting;

আর্গুমেন্ট এর লিস্ট লম্বা হলে ভার্টিক্যালি আর্গুমেন্ট তালিকাভুক্ত করা ভালো ।

ট্রেলিং কমা (,)

PHP 7.0 থেকে, আর্গুমেন্ট লিস্ট-এ একটি ট্রেলিং কমা (,) থাকতে পারে, যা PHP অনুবাদক হিসেবে গণ্য হবে না ।

উদাহরণ স্বরূপ:

$greeting = concat(
	'Welcome ',
	'Home',
);

PHP 8.0 থেকে শুরু করে, আপনি প্যারামিটার লিস্ট-এ এইভাবেই ট্রেলিং কমা (,) ব্যাবহার করতে পারেন :

function concat(
	$str1,
	$str2,
) {
	return $str1 . $str2;
}

মান দ্বারা আর্গুমেন্ট পাস

নিম্নলিখিত উদাহরণ বিবেচনা করুন:

<?php
$counter = 1;

function increase(&$value)
{
    $value += 1;
    echo $value . '<br>'; // 2
}

// increase the counter
increase($counter);

echo $counter . '<br>'; // 2
?>

আউটপুট:

2
1

কিভাবে এটা কাজ করেঃ

  • প্রথমে, $counter ভেরিয়েবল নির্ধারণ করে এবং এর ভেলু একটিতে শুরু করে ।
  • দ্বিতীয়ত, increase() ফাংশন নির্ধারণ করে, যা আর্গুমেন্ট-কে এক দ্বারা বৃদ্ধি করে এবং এটি প্রদর্শন করে।
  • তৃতীয়ত, increase()ফাংশনটি কল করে এবং $counter ভেরিয়েবলকে ফাংশনে পাস করে।
  • অবশেষে,  $counter ভেরিয়েবল প্রদর্শন করে।

যখন  $counter ভেরিয়েবলকে increase() ফাংশন-কে করে করে, তখন ফাংশন-টি তার মান এক করে বাড়িয়ে দিবে। অতএব, যখন ফাংশনের ভিতরে $counter-এর মান প্রদর্শন করে, তখন দুটি পাওয়া যায়।

যা ঘটবে তা হল, যখন  increase() ফাংশনের  $counter পাস করে তখন ফাংশন  $counter ভেরিয়েবল অনুলিপি করে এবং অনুলিপিটি সংশোধন করে। এটি মূলত পরিবর্তনশীল, পরিবর্তন করে না। $counter ভেরিয়েবল পরিবর্তন হয় না।

যাইহোক, ফাংশন কল করার পরে, কাউন্টার ভেলু এখনও এক। এর অর্থ হল  increase() ফাংশন, ফাংশনের বাইরে  $counter ভেরিয়েবল বাড়ায় না।

যখন ফাংশন-এর মধ্যে কোন আর্গুমেন্ট-এর ভেলু পরিবর্তন করা হয় এবং ফাংশনের বাইরে পরিবর্তিত না হয় , তখন এটির value দিয়ে pass করা হয়।

ডিফল্টভাবে, PHP -তে ভেলু দ্বারা আর্গুমেন্ট পাস করানো হয়। যদি একটি ফাংশন তার আর্গুমেন্ট পরিবর্তন করতে চান, তাহলে আপনাকে রেফারেন্স দ্বারা আর্গুমেন্ট পাস করাতে হবে।

Passing arguments by reference (রেফারেন্স দ্বারা আর্গুমেন্ট পাস)

রেফারেন্স দ্বারা একটি আর্গুমেন্ট পাস করানোর জন্য, আপনি ফাংশনের সংজ্ঞাতে প্যারামিটারের নামের সাথে অপারেটর (&) কে এইভাবে প্রিপেন্ড করুন:

<?php
$counter = 1;

function increase(&$value)
{
    $value += 1;
    echo $value . '<br>'; // 2
}

// increase the counter
increase($counter);

echo $counter . '<br>'; // 2
?>

আউটপুট:

2
2

এই উদাহরণে, $counter ভেরিয়েবলের পরিবর্তন ফাংশনের ভিতরে এবং বাইরে উভয়ই প্রতিফলিত হয়েছে।

Summary (সারাংশ)

  • একটি কমা (,) দ্বারা আলাদা প্যারামেটার. PHP 8.0 থেকে প্যারামিটার লিস্ট-এ ট্রেইলিং কমা (,) থাকতে পারে যা PHP  অনুবাদকে এড়িয়ে চালে করে।
  • ডিফল্টভাবে, PHP -তে ভেলু দ্বারা আর্গুমেন্ট পাস করা হয়।
  • রেফারেন্স দ্বারা আর্গুমেন্ট পাস করানোর জন্য একটি অ্যাম্পার্স্যান্ড (&) দ্বারা প্যারামিটার কে প্রিপেন্ড করা হয় ।

Leave a Comment

Share this Doc

PHP ফাংশন প্যারামিটার (function parameters)

Or copy link

CONTENTS

Subscribe

×
Cancel