我正在执行一个SQL查询,结果得到行数:
$sql = "SELECT id, name, age FROM users";
$stmt = $conn->prepare($sql);
$stmt->execute();
$result = $stmt->fetchAll(PDO::FETCH_ASSOC);
但是出于某种目的,我只需要将id列保存为JSON数组(包含结果的所有id),因此最后我应该有一个$idJsonArray
变量,它将包含所有ID的格式如下:{11, 15, 74, 100}
(假设查询返回了包含ID 11、15、74和100的4行)
答案 0 :(得分:0)
您可以使用array_column()
提取id
列,然后仅提取json_encode()
的结果...
$jsonIDs = json_encode(array_column($result, "id"));
会给...
[11, 15, 74, 100]
(由于它是一个数组,它将位于[]
中,而不是{}
中)
如果需要将其作为对象输出,则将JSON_FORCE_OBJECT
添加到编码中...
$jsonIDs = json_encode(array_column($result, "id"), JSON_FORCE_OBJECT);