$arr = ["250","250","500","500","250"];
这是我的$arr
数组。我要替换300而不是500。
示例:
["250","250","300","300","250"]; //Output
$length = sizeof($arr);
for($i = 0; $i < $length; $i++)
{
if($arr[$i] <= 300)
{
}
else
{
$replace = array($i => "300");
array_replace($arr, $replace);
}
}
答案 0 :(得分:3)
您应该使用str_replace()
函数,该函数允许您在字符串和数组中用另一个值替换一个值。
在您的情况下,它将是:
$arr = str_replace("500","300",$arr);
答案 1 :(得分:0)
您可以使用array_replace()
,但是它不是按值而是按位置工作,并且array_replace()
返回一个新数组,而不是对原始数组进行变异。
由于未使用修改后的数组,因此您可以像下面那样修改代码的else部分;
....
....
else
{
$replace = array($i => "300");
$arr2 = array_replace($arr, $replace);
var_dump($arr2);//this holds the replaced array
}