PDO is iets meer dan iedereen denkt. Het heeft bijvoorbeeld een geweldige functie voor u, genaamd PDO::FETCH_GROUP .
Om nog maar te zwijgen over andere kleine verbeteringen die uw code aanzienlijk korter kunnen maken.
$r = $handler->query("SELECT confirmed, c.* FROM comments c")->fetchAll(PDO::FETCH_GROUP);
Is alle code die je nodig hebt.
hier selecteert u de confirmed
veld eerst en vertel PDO dan om de resultaten te groeperen (of "vermenigvuldigen") op basis van de waarde.
En nu kunt u uw opmerkingen afdrukken waar u maar wilt
// Awaiting Comments
foreach($r[0] as $r_) {
echo "<li>$r_[title]</li>";
}
// Confirmed comments
foreach($r[2] as $r_) {
echo "<li>$r_[title]</li>";
}
Of, om het in één lus te maken
$titles = [
0 => 'Awaiting Comments',
2 => 'Comments waiting confirmation',
1 => 'Confirmed Comments',
];
foreach ($titles as $code => $title)
{
echo "<h3>$title</h3>";
foreach($r[$code] as $r_) {
echo "<li>$r_[title]</li>";
}
}