3v4l.org

run code in 300+ PHP versions simultaneously
<?php $borders = [20,40,60,80]; // some test data $rows[] = ["Rpa" => 30, "Rpb" => 14, "Rpc" => 1, "Rpd" => 24]; $rows[] = ["Rpa" => 41, "Rpb" => 33, "Rpc" => 20, "Rpd" => 79]; $grouprows = []; // we'll need some array to re-structure your rows. foreach($rows as $row) { // this is your while($row = $result->fetch_assoc()) $groups = []; // the former columns will be packed into "groups" (1-20, 21-40,..) foreach($row as $column => $value) { foreach($borders as $i => $border) { // check where the value fits in if($value <= $border) { $groups[$border][] = "$column: $value"; break; } } ksort($groups); // sort the groups to be ascending } $grouprows[] = $groups; } // actual output echo "<table border=1> <tr> <th>1-20</th> <th>21-40</th> <th>41-60</th> <th>61-80</th> <th>81-100</th> </tr>\n"; foreach($grouprows as $row) { echo "<tr>\n"; $colcount = 0; foreach($row as $col) { if(is_array($col)) { echo "\t<td>" . implode(",",$col) . "</td>\n"; } else { echo "\t<td></td>\n"; } $colcount++; } for($colcount;$colcount<count($borders);$colcount++) { echo "\t<td></td>\n"; } echo "</tr>\n"; } echo "</table>";
Output for git.master, git.master_jit, rfc.property-hooks
<table border=1> <tr> <th>1-20</th> <th>21-40</th> <th>41-60</th> <th>61-80</th> <th>81-100</th> </tr> <tr> <td>Rpb: 14,Rpc: 1</td> <td>Rpa: 30,Rpd: 24</td> <td></td> <td></td> </tr> <tr> <td>Rpc: 20</td> <td>Rpb: 33</td> <td>Rpa: 41</td> <td>Rpd: 79</td> </tr> </table>

This tab shows result from various feature-branches currently under review by the php developers. Contact me to have additional branches featured.

Active branches

Archived branches

Once feature-branches are merged or declined, they are no longer available. Their functionality (when merged) can be viewed from the main output page


preferences:
171.23 ms | 406 KiB | 5 Q