$stmt = $db->query('SELECT * FROM posts ORDER BY date DESC');
while($row = $stmt->fetch()){
$date = strtotime($row['date']);
$dateb = date("d-M-H:i", $date);
$items.= "<div class='item'" .
"data-id=" . $row['id'] . "data-path='" . $row['cats'] . "'>" .
"<span class='spandate'>" . $dateb . "</span>" .
"<span class='spantitle'>" . $row['title'] . "</span>" .
"</div>\n";
}}
这给了我一系列item
名为div的系列
现在,是否有可能在php端(并且没有编写新的SELECT语句,仅使用上面的内容)来获取特定的item
,即具有特定item
的{{1}}?
类似的东西:
id
答案 0 :(得分:1)
回答您的主要问题是:
$x = 5;
while($row = $stmt->fetch()) {
if ($row['id'] == $x) {
// do what you need - echo $row or add it to array.
}
}
但,再一次 - 选择所有值并在php循环中过滤它们开销。
假设您有数千行,并且需要在php中获取并迭代所有行。 Mysql查询会更快更多:
$stmt = $db->query('SELECT * FROM posts WHERE id = 5 ORDER BY date DESC');
while($row = $stmt->fetch()){
// do what you need - echo $row or add it to array.
}
所以,如果你想编写正确的代码 - 使用mysql过滤。