2

我有一个字符串 php

arr={"one", "one", "one", "one", "one", "one", "one", "one", "one"}

我想将“one”替换为“1”,但我只想替换某个位置 at 0 2 4 6 8,而 at1 3 5 7 9不改变

结果准确:arr={"1", "one", "1", "one", "1", "one", "1", "one", "1"}

如果我在 php 中使用 str_replace 结果是替换所有位置,我想要这个工作想法吗?

4

4 回答 4

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);
于 2012-04-18T05:48:44.660 回答
0
for($i=0; $i < count($arr); $i++)
{
   if(($i%2) == 0) $arr[$i] = '1';
}
于 2012-04-18T05:13:07.143 回答
0
foreach($arr as $ak => &$av) {

 if($ak % 2 == 0 && $av == 'one') {

  $av = '1';

 }

}
于 2012-04-18T05:13:14.820 回答
0

也许有了这个

    for($i = 0; $i < count($arr);$i++){ 
       if($i == 0 || $i%2 != 0){
           $arr[$i] = 1;
       }
    }
于 2012-04-18T05:16:36.557 回答