gpt4 book ai didi

PHP MySQL 连接表作为 JSON

转载 作者:可可西里 更新时间:2023-11-01 07:43:43 24 4
gpt4 key购买 nike

<分区>

我有两个不同的表 – 一个名为“产品”,其中包含有关在线商店产品的信息,另一个名为“图像”的表包含相应的产品图像(每个产品有几张图像)。我想在主表“products”上加入表“images”并以 JSON 格式输出结果。

“产品”表如下所示(简化):

id  | name
----|--------
57 | apple
58 | tomato
59 | ...

以及产品图片的“图片”表:

img_id | img         | p_id | listorder
-------|-------------|------|----------
32 | apple1.jpg | 57 | 1
33 | apple2.jpg | 57 | 2
34 | tomato1.jpg | 58 | 1
35 | ... | ... | ...

现在,我的查询是这样的:

$sql = "SELECT
p.id as p_id,
p.name as p_name,
i.*
FROM products p
JOIN (SELECT * FROM images WHERE listorder=1)
AS i ON (i.p_id = p.id)";

因此输出(在将数据提取到数组并转换为 JSON 之后)看起来像这样:

[{
"id": "57",
"name": "apple",
"img": "apple1.jpg"
}, {
"id": "58",
"name": "tomato",
"img": "tomato1.jpg"
}]

所以我的问题是:如何输出以下内容?

[{
"id": "57",
"name": "apple",
"img": [{"img_id": "32","img": "apple1.jpg"}, {"img_id": "33","img": "apple2.jpg"}]
}, {
"id": "58",
"name": "tomato",
"img": [{"img_id": "34","img": "tomato1.jpg"}]
}]

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com