我有一个字符串php
arr={"one", "one", "one", "one", "one", "one", "one", "one", "one"}
我想将“one”替换为“1”,但我只想替换0 2 4 6 8
处的某个位置,并且1 3 5 7 9
处不会更改
结果:arr={"1", "one", "1", "one", "1", "one", "1", "one", "1"}
如果我在php中使用str_replace是结果是替换所有位置,我想要这个工作的想法吗?
答案 0 :(得分:1)
$string = 'arr={"one", "one", "one", "one", "one", "one", "one", "one", "one"}';
$arr = explode(',', $string);
for ($i = 0; $i < count($arr); $i++)
{
if ($i % 2 == 0)
$arr[$i] = str_replace('one', '1', $arr[$i]);
}
echo implode(',', $arr);
答案 1 :(得分:0)
for($i=0; $i < count($arr); $i++)
{
if(($i%2) == 0) $arr[$i] = '1';
}
答案 2 :(得分:0)
foreach($arr as $ak => &$av) {
if($ak % 2 == 0 && $av == 'one') {
$av = '1';
}
}
答案 3 :(得分:0)
也许有了这个
for($i = 0; $i < count($arr);$i++){
if($i == 0 || $i%2 != 0){
$arr[$i] = 1;
}
}