fish man fish man - 1 year ago 61
PHP Question

php foreach as key, every two number as a group

<?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 as key, how to make every two number as a group?

I want to output:

1,2
_____
3,4
_____
5,6
_____
7,8
_____
9,10
_____
11

Answer Source

Have a look at the array_chunk() function.

In your case you'd use it like this:

foreach(array_chunk($data, 2) as $values) {
    echo implode(',', $values)."\n";
}

During the last iteration $values will have only one element so if you plan to access the elements directly using their index remember to use count() to check the array's element count.

Recommended from our users: Dynamic Network Monitoring from WhatsUp Gold from IPSwitch. Free Download