PDO sedikit lebih dari yang dipikirkan semua orang. Misalnya, ia memiliki fitur luar biasa untuk Anda, yang disebut PDO::FETCH_GROUP .
Belum lagi peningkatan kecil lainnya yang dapat membuat kode Anda lebih pendek secara dramatis.
$r = $handler->query("SELECT confirmed, c.* FROM comments c")->fetchAll(PDO::FETCH_GROUP);
Apakah semua kode yang Anda butuhkan.
di sini Anda memilih confirmed
lapangan terlebih dahulu dan kemudian beri tahu PDO untuk mengelompokkan (atau "menggandakan") hasil berdasarkan nilainya.
Dan sekarang Anda dapat mencetak komentar Anda di mana pun Anda mau
// Awaiting Comments
foreach($r[0] as $r_) {
echo "<li>$r_[title]</li>";
}
// Confirmed comments
foreach($r[2] as $r_) {
echo "<li>$r_[title]</li>";
}
Atau, untuk membuatnya dalam satu putaran
$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>";
}
}