开启辅助访问
帐号登录 |立即注册

如何在PHP中替换字符串

 
像很多东西一样,PHP 也有一个内置函数,您可以使用它来替换 PHP 中的字符串。该str_replace($search, $replace, $subject, $count)函数采用四个参数来确定函数的行为方式。

第一个参数是$search。它用于指定您要搜索替换的字符串。将替换原始字符串的字符串使用 指定$replace。该$subject参数是主字符串,您将在其中进行所有替换。两者的值$search和$replace可以是数组或字符串。

在 PHP 中用另一个字符串替换一个字符串
<?php
$sentence = "Andrew prefers tea to coffee.";
$search = "Andrew";
$replace = "Adam";
$new_sentence = str_replace($search, $replace, $sentence);
// Adam prefers tea to coffee.
echo $new_sentence;
?>


用单个字符串替换多个字符串

正如我之前提到的,您可以将 的值指定$search为一个数组。如果$replace是单个字符串,那么$search数组中的所有值都将替换为$replace我们的主字符串。
<?php
$sentence = "There were 60 bananas and 12 oranges in the first basket. Some children ate 2 mangoes each.";
$search = ["bananas", "mangoes"];
$replace = "apples";
$new_sentence = str_replace($search, $replace, $sentence);
// There were 60 apples and 12 oranges in the first basket. Some children ate 2 apples each.
echo $new_sentence;
?>


两者$search和$replace都可以指定为数组。在这种情况下,$search中的第一个元素将被$replace中的第一个元素替换,依此类推。换句话说,$search将被$replace相应索引处的子字符串替换。
<?php
$sentence = "There were 60 bananas and 12 oranges in the first basket. Some children ate 2 mangoes each.";
$search = ["bananas", "mangoes"];
$replace = ["apples"];
$new_sentence = str_replace($search, $replace, $sentence);
// There were 60 apples and 12 oranges in the first basket. Some children ate 2  each.
echo $new_sentence;
?>
这个例子与我们上面写的用苹果代替香蕉和芒果的例子非常相似。这次唯一的区别是现在是一个包含单个元素的数组。但是,这会导致完全不同的结果,因为mangoes现在将被空字符串替换。
如果$search和$replace数组的长度不相等怎么办?如果$search元素多于$replace,则$search中的额外元素将被空字符串替换。

计算更换次数

您可以将第四个参数传递给str_replace(). 第四个参数的值设置为执行的替换次数str_replace()。它在各种情况下都有帮助。例如,如果您事先知道应该由执行多少次替换。就像许多其他函数一样,PHP 带有一个不区分大小写的str_replace()被调用版本str_ireplace()。它的工作原理与此类似str_replace(),但以不区分大小写的方式进行替换。



回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

友情链接
  • 艾Q网

    提供设计文章,教程和分享聚合信息与导航工具,最新音乐,动漫,游戏资讯的网站。