首页 > 解决方案 > 使用 str_replace 替换两个包含新添加文本的字符串

问题描述

我正在尝试替换字符串的一部分,但函数 str_replace 打印完全相同的原始字符串而不替换它!我知道这一点,因为我的第一个和第二个字符串有一堆双引号,我试图解决这个问题,但我失败了!

我的代码:

$update_this_item = $test_array[$key].",";
$updated_item = $data_item[0].",".($data_item[1]+1).",".$data_item[2].",".$data_item[3].",".$data_item[4].",".$data_item[5].",";
echo str_replace($update_this_item, $updated_item, $test);

我将为您解释这些字符串:

$test = "2021/05/11,1024,260,600,180,450|2021/05/10,1024,260,600,180,450|2021/05/09,1024,260,600,180,450|2021/05/08,1024,260,600,180,450|2021/05/07,1024,260,600,180,450";
echo $test_array[$key]; //2021/05/11,1024,260,600,180,450
echo $updated_item; //2021/05/11,1025,260,600,180,450,

希望能找到解决这个问题的方法,多谢!

标签: phpstr-replace

解决方案


在 $test 你没有','而不是

$update_this_item = $test_array[$key].",";

利用

 $update_this_item = $test_array[$key];

推荐阅读