str_replace是PHP中用于全量、大小写敏感的字符串替换函数,支持单个或多个子串批量替换,返回新字符串且可选获取替换次数;需注意其不支持正则和条件替换。

str_replace 是 PHP 中最常用的字符串替换函数,它能批量把某个子串替换成另一个子串,支持单个或多个目标、多个替换值,而且不区分大小写(如需区分,用 str_ireplace)。
基本用法:替换一个子串
最常见场景:把字符串里所有出现的某个词换成新词。
语法:str_replace(要找的, 换成的, 原字符串)
例如:
保君发免费网站系统使用说明:一、 本程序完全免费,并且,保证功能全部可以使用,且无后门及木马等,请放心使用。二、 如果发现问题,请及时联系我们,我们会义务尽力解决所反映的问题。或到本公司网站下载更新程序。三、 修改三个文件就能成为自己的网站:1、顶部图片LOGO.GIF,2、替换透明动画:LOGO.SWF,3、修改#sys123.asp中的内容为你想要的内容。
立即学习“PHP免费学习笔记(深入)”;
$text = "苹果很好吃,苹果很甜";
$new = str_replace("苹果", "香蕉", $text);
// 结果:'香蕉很好吃,香蕉很甜'
一次替换多个不同子串
传入数组,让不同关键词各自对应不同的替换内容。
例如:
立即学习“PHP免费学习笔记(深入)”;
$text = "今天天气真好,我吃了苹果和橘子";
$find = ["苹果", "橘子", "好"];
$replace = ["香蕉", "橙子", "棒"];
$new = str_replace($find, $replace, $text);
// 结果:'今天天气真棒,我吃了香蕉和橙子'
注意:两个数组必须等长,一一对应;如果 $replace 数组比 $find 短,末尾缺失位置会替换成空字符串。
获取替换次数(可选)
str_replace 支持第四个参数,传入一个变量,函数会把实际替换次数写进去。
例如:
立即学习“PHP免费学习笔记(深入)”;
$text = "哈哈哈哈哈";
$count = 0;
$new = str_replace("哈", "呵", $text, $count);
// $new 是 "呵呵呵呵呵",$count 是 5
注意事项和常见误区
- str_replace 是全量匹配、从左到右依次替换,不支持正则,也不支持按位置或条件替换
- 如果想替换固定位置的字符,得用 substr_replace;想按模式替换(比如所有数字),得用 preg_replace
- 原字符串不会被修改,函数返回新字符串,记得接收返回值
- 对大小写敏感,如需忽略大小写,改用 str_ireplace
基本上就这些。用对了,一行代码就能干净利落地完成大多数文本替换任务。










