php - 如何在 PHP 中将 MySQL 表转换为 JSON?

标签 php mysql json

我有一个 MySQL 表,我想将其转换为 JSON 格式,如下所示,但我正在努力如何做到这一点。这样做的目的是我有一个具有 3 个分类级别的产品目录,我需要为其创建一个下拉菜单。

有人可以帮忙吗?

我想最终创建的菜单

a         <- Level 1
- a1      <- Level 2
- - a11   <- Level 3
- - a12
- - a13
- a2
- - a21
- - a22
- - a23
- a3
- - a31
- - a32
- - a33
b
- b1
- - b11
- - b12
- - b13
- b2
- - b21
- - b22
- - b23
c
- c1
- c2
- c3
d
e

MySQL 表

f   b   t
-------------------
a   a1  a11
a   a1  a12
a   a1  a13
a   a2  a21
a   a2  a22
a   a2  a23
a   a3  a31
a   a3  a32
a   a3  a33
b   b1  b11
b   b1  b12
b   b1  b13
b   b2  b21
b   b2  b22
b   b2  b23
c   c1
c   c2
c   c3
d
e

我想要最终得到 JSON,这样我就可以创建菜单

{"menu":{"items":[{"value":"a","items":[{"value":"a1","items":["a11","a12","a13"]},{"value":"a2","items":["a21","a22","a23"]},{"value":"a3","items":["a31","a32","a33"]}]},{"value":"b","items":[{"value":"b1","items":["b11","b12","b13"]},{"value":"b2","items":["b21","b22","b23"]}]},{"value":"c","items":[{"value":"c1"},{"value":"c2"},{"value":"c3"}]},{"value":"d"},{"value":"e"}]}}

最佳答案

PHP 有一个漂亮的小函数,名为 json_encode()

json_encode — Returns the JSON representation of a value

您所要做的就是将数据提取到普通的 PHP 数组中,然后将其传递给此函数。

$orig = array(
 'stack' => 'overflow'
);

$jsonString = json_encode($orig);
// {"stack":"overflow"}

关于php - 如何在 PHP 中将 MySQL 表转换为 JSON?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14095581/

相关文章:

php - 如何删除字符串中的所有非大写字符?

javascript - 提交后清除表单字段

mysql - 通过获取其他表中的列来添加特定列

python - 解析嵌套的 JSON 响应 Python

php - 多个站点上的 APC 用户缓存 key 冲突

mysql - 如何只返回列的特定部分?

php - 按类别排序结果

Javascript Json Obj 动态数组变量名

javascript - Node JS |类型错误 : Cannot read property 'first_name' of undefined

php - 在一对多关系中获取字符串值而不是外部 id