Return Type Declarations PHP 7 এ ফাংশনের রিটার্ন ভ্যালুর টাইপ সুনির্দিষ্ট করার একটি সুবিধা প্রদান করেছে, যা কোডের নির্ভুলতা, নিরাপত্তা এবং রক্ষণাবেক্ষণ সহজ করতে সহায়ক। এই বৈশিষ্ট্যটি ব্যবহারে ফাংশনের টাইপ নির্ধারণ করা হয়, এবং এটি কোডে কেবল নির্দিষ্ট টাইপের মান রিটার্ন করতে বাধ্য করে।
এখন, চলুন Return Type Declarations ব্যবহারের জন্য কোডের সঠিক গঠন (structure) দেখুন এবং বুঝে নিন কীভাবে এটি প্রয়োগ করতে হয়।
Return Type Declarations-এর জন্য কোড স্ট্রাকচার
PHP 7 থেকে আপনি ফাংশন বা মেথডে রিটার্ন টাইপ ডিক্লারেশন ব্যবহার করতে পারেন, যা সঠিক রিটার্ন টাইপ নিশ্চিত করে। সাধারণভাবে, কোডে রিটার্ন টাইপ ডিক্লারেশন ফাংশন বা মেথডের শেষে এবং কলনের পর দেওয়া হয়।
সাধারণ সিঙ্কট্যাক্স
<?php
function functionName(parameter1: type, parameter2: type): returnType {
// ফাংশনের লজিক
return $value; // এখানে $value returnType অনুযায়ী হবে
}
?>- parameter1, parameter2: ফাংশনের প্যারামিটার (argument) গুলি। এগুলি নির্দিষ্ট টাইপের হতে হবে, যেমন
int,string, ইত্যাদি। - returnType: ফাংশনের রিটার্ন টাইপ যা
int,string,float,bool,void, ইত্যাদি হতে পারে।
Return Type Declarations উদাহরণ
১. int রিটার্ন টাইপ ডিক্লারেশন
ফাংশনটি int টাইপের মান রিটার্ন করবে এমন একটি উদাহরণ:
<?php
function addNumbers(int $a, int $b): int {
return $a + $b;
}
echo addNumbers(5, 10); // আউটপুট হবে: 15
?>এখানে, addNumbers ফাংশনটি দুটি int টাইপের প্যারামিটার গ্রহণ করে এবং int টাইপের মান রিটার্ন করে।
২. float রিটার্ন টাইপ ডিক্লারেশন
ফাংশনটি float টাইপের মান রিটার্ন করবে এমন একটি উদাহরণ:
<?php
function calculateArea(float $length, float $width): float {
return $length * $width;
}
echo calculateArea(5.5, 2.3); // আউটপুট হবে: 12.65
?>এখানে, calculateArea ফাংশনটি দুটি float টাইপের প্যারামিটার গ্রহণ করে এবং float টাইপের মান রিটার্ন করে।
৩. void রিটার্ন টাইপ ডিক্লারেশন
যদি একটি ফাংশন কোনো মান রিটার্ন না করে, তবে আপনি void টাইপ ব্যবহার করতে পারেন।
<?php
function printMessage(string $message): void {
echo $message;
}
printMessage("Hello, World!"); // আউটপুট হবে: Hello, World!
?>এখানে, printMessage ফাংশনটি কোনো রিটার্ন মান দেয় না, তাই তার রিটার্ন টাইপ void।
৪. Strict Mode এবং Return Type Declarations
PHP 7-এ strict mode সক্রিয় করে রিটার্ন টাইপ ডিক্লারেশনকে আরও কঠোর করা যায়। strict mode সক্রিয় থাকলে, ফাংশনটি সঠিক টাইপের মান রিটার্ন করতে বাধ্য হয়। যদি অন্য ধরনের মান রিটার্ন করা হয়, তাহলে TypeError প্রদর্শিত হবে।
<?php
declare(strict_types=1);
function multiply(int $a, int $b): int {
return $a * $b;
}
echo multiply(5, 10); // আউটপুট হবে: 50
echo multiply(5, "10"); // TypeError: strict mode সক্রিয় থাকায় টাইপ কনভার্শন হবে না
?>এখানে strict mode সক্রিয় রাখার ফলে "10" স্ট্রিংটি int টাইপে রূপান্তরিত হবে না এবং TypeError হবে।
কোড স্ট্রাকচারের সারাংশ
- Parameter Declarations: ফাংশনের আর্গুমেন্টের টাইপ অবশ্যই স্পষ্ট করতে হবে।
- Return Type: ফাংশন বা মেথডের শেষে কলনের পর টাইপ নির্ধারণ করতে হবে।
- Strict Mode: যদি strict mode (
declare(strict_types=1);) সক্রিয় থাকে, তাহলে টাইপ কনভার্শন (যেমনstringথেকেint-এ রূপান্তর) বন্ধ হয়ে যাবে।
সারসংক্ষেপ
Return Type Declarations PHP 7-এর একটি গুরুত্বপূর্ণ বৈশিষ্ট্য যা ফাংশনের রিটার্ন টাইপ সুনির্দিষ্ট করতে ব্যবহৃত হয়। এর মাধ্যমে আপনি নিশ্চিত করতে পারেন যে ফাংশনটি শুধুমাত্র একটি নির্দিষ্ট টাইপের মান রিটার্ন করবে। এটি কোডের নির্ভুলতা, নিরাপত্তা এবং রক্ষণাবেক্ষণ সহজ করার জন্য অত্যন্ত গুরুত্বপূর্ণ। strict mode ব্যবহার করলে টাইপ কনভার্শন নিষিদ্ধ করা হয়, যা আরও নির্ভুল এবং নিরাপদ কোড নিশ্চিত করে।
Read more