获取所有提取的特定行

时间:2017-01-29 09:15:42

标签: php mysql

$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

1 个答案:

答案 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过滤。

相关问题