PHP-তে বিভিন্ন ধরনের বিল্ট-ইন ফাংশন রয়েছে যাদের নিজস্ব ফাংশনালিটি রয়েছে। substr() PHP-তে একটি বিল্ট-ইন ফাংশন যা স্ট্রিং নিয়ে কাজ করে। এটি স্ট্রিং-এর একটি অংশ এক্সট্র্যাক্ট করতে ব্যবহৃত হয়।
substr()-এর সিনট্যাক্স নিচে দেওয়া হলো:
substr(string, begin, length)
এখন প্যারামিটারগুলো আলোচনা করা যাক। substr() ফাংশনে তিনটি প্যারামিটার পাস করা যায় যার মধ্যন দুটি বাধ্যতামূলক এবং একটি অপশনাল।
string
এই প্যারামিটারতে স্ট্রিংটি পাস করা হয় যা কাটতে বা অ্যাডজাস্ট করতে হবে। এটি বাধ্যতামূলক প্যারামিটার।
begin position
এটি বাধ্যতামূলক প্যারামিটার। এটি স্ট্রিং-এ সেই পজিশন নির্দেশ করে যেখানে থেকে অংশটি সরানো হবে। এই মানটি ইন্টিজার হতে হবে। যদি ইন্টিজার পজিটিভ হয়, তবে রিটার্ন স্ট্রিং ইনপুটে উল্লিখিত শুরু পজিশন থেকে শুরু হবে।
যদি ইন্টিজার নেগেটিভ হয়, তবে শুরু পজিশন স্ট্রিং-এর শেষ থেকে গড়ে উঠবে।
length
এই প্যারামিটার অপশনাল এবং ইন্টিজার হতে হবে। এটি মূল স্ট্রিং থেকে কতটুকু অংশ কাটবে তা নির্দেশ করে। পজিটিভ ইন্টিজার হলে শুরু থেকে লেঙ্গথ এক্সট্র্যাক্ট করা হয়।
নেগেটিভ ইন্টিজার হলে স্ট্রিং-এর শেষ থেকে এক্সট্র্যাক্ট করা লেঙ্গথ বোঝায়।
যদি ইন্টিজার নেগেটিভ হয় তবে শুরু থেকে বোঝায় এবং যদি কিছু পাস না করা হয়, তবে শুরু পজিশন থেকে স্ট্রিং-এর শেষ পর্যন্ত রিটার্ন করবে।
উদাহরণ
<?php
$string1 = "Welcome To Tutorials Point";
$len = strlen($string1);
echo substr($string1, 8), "<br/>";
echo substr($string1, 5, $len), "<br/>";
echo substr($string1, -5, 3), "<br/>";
?>
আউটপুট
To Tutorials Point
me To Tutorials Point
Poi
ব্যাখ্যা
উপরোক্ত উদাহরণে, আমরা একটি স্ট্রিং ভেরিয়েবল নেওয়া এবং substr() ফাংশন ব্যবহার করে সেই স্ট্রিং-এর প্রয়োজনীয় অংশ পেয়েছি। প্রথম এক্সপ্রেশনে শুধু শুরু পয়েন্ট দিয়েছি, এন্ডিং পয়েন্ট না। দ্বিতীয় এক্সপ্রেশনে শুরু ও শেষ দুটোই দিয়েছি। তৃতীয় এক্সপ্রেশনে নেগেটিভ শুরু পয়েন্ট দিয়েছি তাই সেটি শেষ থেকে ইভ্যালুয়েট করেছে।