str_replace
تابع str_replace برای جایگزینی رشته در PHP است. یعنی یک کلمه را با کلمه دیگر عوض می کند. مثل وقتی در متن، «world» را با «Peter» جابه جا می کنی.
تعریف و کاربرد
تابع str_replace() بعضی کاراکترها را با کاراکترهای دیگر در یک رشته جایگزین می کند. این تابع حساس به حروف بزرگ/کوچک است. یعنی «World» با «world» فرق دارد.
نکته: اگر جست وجوی حساس نبودن می خواهی، از str_ireplace استفاده کن.
سینتکس
str_replace(find, replace, string, count)
پارامترها
- find: مقدار هدف برای یافتن.
- replace: مقدار جایگزینِ find.
- string: رشته یا آرایه رشته ها برای جست وجو.
- count: متغیری برای شمارش تعداد جایگزینی ها.
مثال ساده
<?php
echo str_replace("world", "Peter", "Hello world!");
?>
قوانین رفتار با آرایه ها
- اگر string آرایه باشد، خروجی هم آرایه می شود.
- اگر find آرایه باشد، روی هر مورد اعمال می شود.
- اگر find و replace هر دو آرایه باشند و replace کوتاه تر باشد، جای خالی با رشته خالی پر می شود.
- اگر find آرایه باشد و replace رشته، همان رشته برای همه موارد استفاده می شود.
آرایه و شمارش جایگزینی ها
<?php
$arr = array("blue", "red", "green", "yellow");
print_r(str_replace("red", "pink", $arr, $i));
echo "Replacements: $i";
?>
کمتر بودن اعضای replace از find
<?php
$find = array("Hello", "world");
$replace = array("B");
$arr = array("Hello", "world", "!");
print_r(str_replace($find, $replace, $arr));
?>
گام های عملی
- کلمه هدف را تعیین کن.
- جایگزین مناسب را مشخص کن.
str_replace()را روی رشته یا آرایه اجرا کن.- در صورت نیاز، مقدار
countرا بخوان.
نکته: برای قالب بندی خروجی، از sprintf کمک بگیر.
آموزش جایگزینی رشته در PHP را همیشه دم دست داشته باش.
جمع بندی سریع
- str_replace حساس به حروف است.
- می تواند روی آرایه ها کار کند.
countتعداد تعویض ها را می دهد.- برای حالت بی حسّاس، str_ireplace بهتر است.