2011-11-29 74 views
4

我有一個正在燃燒我的頭一個問題:更換陣列(PHP)的值

我擁有一個充滿357個值

$x_axis[0] = '1234' 
$x_axis[1] = '2345' 
..... 
$x_axis[356] = '678' 

什麼,我需要做的是改變一個數組$x_axis[]將每個10個鍵的值設爲'0000'

但是我的頭今天絕對關閉了......你能幫助我嗎?

謝謝!

+0

你想的第1個要素(索引0),第11要素(指數10),第21個元素(索引20)等。或者你希望第10個元素(索引9),第20個元素(索引19)等是'0000'? –

回答

-2

如果你希望每10個變成0000,你可以用for循環來做到這一點。這也可以考慮到你的價值量可以改變。

$length = count($x_axis); 
for($i=0;$i<$length;$i+=10) 
{ 
    if($i%10==0) 
    { 
    $x_axis[$i] = '0000'; 
    } 
} 

編輯:

人是真正敏感的,所以我修改了代碼,以不殺小貓了。

+0

每個答案都很好,但爲了我所需要的目的,這是最合適的一個。謝謝你們! –

+0

對不起,這是比其餘的更差的答案 – ajreal

+0

這個人每次進入循環時都會殺死一隻小貓。 -1! –

5
$length = count($x_axis); 
for ($i=0; $i<$length; $i+=10) 
{ 
    $x_axis[$i] = "0000"; 
} 
1
for ($i = 10; isset($x_axis[$i]); $i += 10) { 
    $x_axis[$i] = '0000'; 
} 

工作完成。

0

可能是一個更好的方式與陣列功能,要做到這一點,但我的頭頂部

$arrayLen = count($x_axis) 
for($index=0; $index<$arrayLen; $index+=10) { 
    $x_axis{$index] = '0000'; 
} 
1
foreach(range(0, count($x_axis), 10) as $i) { 
     $x_axis[$i] = '0000'; 
} 
1
array_walk($x_axis, function(&$v, $k) { if($k % 10 == 0) $v = '0000'; });