<?php $data=array('1','2','3','4','5','6','7','8','9','10','11'); foreach($data as $key=> $element){ if($key % 2 != 0){ echo $element.'<br />'; } echo '<hr />'; } ?>
php foreach как ключ, как сделать каждый два числа как группу?
Я хочу вывести:
1,2 _____ 3,4 _____ 5,6 _____ 7,8 _____ 9,10 _____ 11
Посмотрите на array_chunk()
.
В вашем случае вы будете использовать его так:
foreach(array_chunk($data, 2) as $values) { echo implode(',', $values)."\n"; }
Во время последней итерации $values
будут иметь только один элемент, поэтому, если вы планируете напрямую обращаться к элементам, используя их индекс, помните, чтобы использовать count()
для проверки количества элементов массива.
Ваш foreach () отлично, но вы хотите печатать каждый элемент, а не только каждый из них. Вы также не хотите, чтобы горизонтальное правило выполнялось каждый раз, даже каждый четный. Таким образом:
<?php $data=array('1','2','3','4','5','6','7','8','9','10','11'); foreach($data as $key=> $element){ echo $element; if($key % 2 != 0){ echo "<br/><hr />"; } else { echo ","; } } ?>