पीडीओ हर किसी के विचार से थोड़ा अधिक है। उदाहरण के लिए, इसमें आपके लिए एक शानदार विशेषता है, जिसे PDO::FETCH_GROUP कहा जाता है। ।
अन्य छोटे सुधारों का उल्लेख नहीं है जो आपके कोड को नाटकीय रूप से छोटा कर सकते हैं।
$r = $handler->query("SELECT confirmed, c.* FROM comments c")->fetchAll(PDO::FETCH_GROUP);
क्या आपके लिए आवश्यक सभी कोड हैं।
यहां आप confirmed
. का चयन कर रहे हैं पहले फ़ील्ड करें और फिर पीडीओ को उसके मूल्य के आधार पर परिणामों को समूह (या "गुणा") करने के लिए कहें।
और अब आप अपनी टिप्पणियों को जहां चाहें प्रिंट कर सकते हैं
// Awaiting Comments
foreach($r[0] as $r_) {
echo "<li>$r_[title]</li>";
}
// Confirmed comments
foreach($r[2] as $r_) {
echo "<li>$r_[title]</li>";
}
या, इसे एक लूप में बनाने के लिए
$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>";
}
}