情報
私のコーディング習慣の傾向に気付き始めており、より良い方法はないかと考えています。
問題
例として、データが含まれている可能性のあるテーブルがあるとしましょう。理想的には、データがある場合はデータをループし、エラー メッセージを表示しない場合はループします。
現在のソリューション
function countResults($type){
$STH = $this->database->prepare('SELECT COUNT(*) FROM table WHERE type = :type');
$STH->execute(array(':type' => $type));
return $STH->fetchColumn();
}
if($class->countResults("1") != 0){
$STH = $this->database->prepare('SELECT * FROM table WHERE type = :type ');
$STH->execute(array(':type' => $type));
while($row = $STH->fetch(PDO::FETCH_ASSOC)){
echo "Row Name:".$row['name']."<br />";
}
} else {
echo "None found";
}
試行回数
$STH->fetch(PDO::FETCH_ASSOC)
変数に格納してから使用することでこれを削減する解決策を試しましたif(!empty($var)){// loop code};
が、データを正しくループアウトすることはできません。
結論
これが緊急に修正するのに苦労している画期的なバグではないことは理解していますが、これが悪い習慣になりつつあるように感じており、これに対するよりスマートな解決策があるのではないかと少し心配しています。習慣になる前に学びましょう!
必要に応じて質問してください。ありがとうございます。