PHP получает значения из массива с четными ключами? - PullRequest
1 голос
/ 02 сентября 2011

Существует ли простой способ циклически просматривать значения массива с использованием foreach, но только для четных ключей.Например, массив, подобный этому:

[0] => val0
[1] => val1
[2] => val2
[3] => val3
[4] => val4

и т. Д.

как я могу перебирать только четные ключи, такие как: 0, 2 и 4?

Спасибозаранее:)

Ответы [ 4 ]

12 голосов
/ 02 сентября 2011

В вашем foreach вы также можете получить ключ, просто проверьте, будет ли это даже или нет.

foreach($array as $key => $value)
{
  if($key%2 != 0) //The key is uneven, skip
    continue;
 //do your stuff
}
5 голосов
/ 02 сентября 2011

Я вижу, что уже есть 2 ответа, которые помогут, но вот еще один, не использующий foreach():

for ($i = 0, $c = count($array); $i < $c; $i += 2)
5 голосов
/ 02 сентября 2011

это экономит 50% от зацикливания

$even = range(0, count($arr), 2);
foreach ($even as $i)
{
  echo $arr[$i]; // etc
}
0 голосов
/ 02 сентября 2011
for ($i=0; array_key_exists($i, $array); $i+=2) {
    echo $array[$i] . "\n";
}
...