تابع substr() برای استخراج بخشی از یک رشته (برش دادن رشته) استفاده میشود.
شما باید ایندکس شروع (start index) و تعداد کاراکترهایی که میخواهید برگردانده شوند را مشخص کنید.
Example
برش را از ایندکس 6 شروع کنید و 5 کاراکتر بعد از آن را برگردانید:
$x = "Hello World!";
echo substr($x, 6, 5);
نکته: اولین کاراکتر ایندکس 0 دارد.
برش رشته تا انتها
اگر پارامتر length را مشخص نکنید، برش رشته تا انتهای رشته ادامه پیدا میکند.
Example
شروع برش از ایندکس 6 و ادامه تا انتهای رشته:
$x = "Hello World!";
echo substr($x, 6);
برش رشته از انتها
با استفاده از ایندکسهای منفی میتوانید برش را از انتهای رشته شروع کنید.
Example
گرفتن 3 کاراکتر از حرف "o" در کلمه world (ایندکس -5):
$x = "Hello World!";
echo substr($x, -5, 3);
نکته: آخرین کاراکتر رشته ایندکس -1 دارد.
طول منفی (Negative Length)
با استفاده از length منفی میتوانید مشخص کنید چند کاراکتر از انتهای رشته حذف شوند.
Example
از رشته "Hi, how are you?" کاراکترها را از ایندکس 5 بگیرید و تا 3 کاراکتر مانده به انتهای رشته ادامه دهید (ایندکس -3).
خروجی باید "ow are y" باشد:
$x = "Hi, how are you?";
echo substr($x, 5, -3);
سوالات سه گزینهای
سوال 1
تابع substr() چه کاری انجام میدهد؟
A) تبدیل رشته به آرایه
B) استخراج بخشی از رشته
C) شمارش کاراکترها
✅ پاسخ: B
سوال 2
خروجی کد زیر چیست؟
echo substr("Hello",1,3);
A)
ell
B)
Hel
C)
llo
✅ پاسخ: A
سوال 3
اولین ایندکس رشته در PHP چند است؟
A) 1
B) 0
C) -1
✅ پاسخ: B
سوال 4
خروجی کد زیر چیست؟
echo substr("Hello",-2);
A)
He
B)
lo
C)
el
✅ پاسخ: B
سوال 5
کدام کد 4 کاراکتر آخر رشته را برمیگرداند؟
A)
substr($text,4)
B)
substr($text,-4)
C)
substr($text,0,4)
✅ پاسخ: B
