php - PHP fetch_assoc 循环
问题描述
我的查询选择了所有符合特定条件的行,但是在为此使用 fetch_assoc 时遇到了问题,我只得到一行。
这是我的代码:
$stmt = $conn->prepare("SELECT filename, comment, action FROM files WHERE belongsto = ?");
$stmt->bind_param("s", $_POST['case_identifer']);
$stmt->execute();
$result = $stmt->get_result();
echo json_encode(array(($result->fetch_assoc())));
$stmt->close();
$conn->close();
我需要将 fetch_assoc 函数变成一个循环,以便在 JSON 中获得所有结果,但我非常不确定如何执行此操作,希望有任何帮助或提示。
解决方案
只需使用while循环将行写入数组,然后对其进行json_encode。所以替换这一行:
echo json_encode(array(($result->fetch_assoc())));
用这个循环:
$output = array();
while ($row = $result->fetch_assoc()) {
$output[] = $row;
}
echo json_encode($output);
推荐阅读
- azure - 使用可用区在 Azure 服务总线上实现高可用性
- reactjs - 反应动态主题
- linux - 可加载内核 mdoule 的 insmod 导致信号 4 异常
- vba - 在 VBA 中使用自定义枚举器实现类 Python 生成器
- apache-drill - Apache Drill - 无法连接到 zk 客户端
- sass - 随机选择mixin
- android-studio - 什么是 Android 中的合并清单?
- hadoop - mapreduce 是否应该映射文本文件的一行,然后减少或处理整个文本文件?
- python - 无法弄清楚如何在张量中使用值
- vue.js - Quasar Framework (Vue) Uploader 使用 apollo-upload (GraphQL)