【问题标题】:Building a multidimensional JSON array through PHP/MySQL通过 PHP/MySQL 构建多维 JSON 数组
【发布时间】:2012-12-14 00:00:21
【问题描述】:

我正在尝试通过 php 构建我认为是 json 中的多维数组并连接到 mysql 数据库。

这是我正在寻找的输出:

[{"region":"Americas"},
{"region":"West","division":"Americas","revenues":"100000","headcount":"6"},
{"region":"East","division":"Americas","revenues":"1500000","headcount":"8"},
{"region":"South","division":"Americas","revenues":"1000000","headcount":"7"},
{"office":"San Francisco","location":"50 Kearny Street", "branch":"West"},
{"office":"Los Angeles","location":"200 Sepulveda","branch":"West"},
{"office":"New York","location":"Penn Street","branch":"East"},
{"office":"Philadelphia","location":"155 Trent","branch":"East"},
{"office":"New Jersey","location":"420 Broadway","branch":"East"},
{"office":"Atlanta","location":"39000 Parker","branch":"South"}]

这为我提供了创建适当可视化的图形程序的提要。我的数据库返回上面 JSON 中的所有值(地区、部门、收入等),除了我必须自己编写代码的“分支”。我不能再次确定“区域”(因为图形算法)所以我不得不将它重命名为“分支”。在此当前配置下,“美洲”是顶部节点,下面是“区域”,然后是每个区域下的“分支”(视情况而定)。

到目前为止,我只能使用 PHP 和 json_(encode) 函数构建一个基本的 JSON 数组;为了获得上面的输出,我手动编辑了文件,以确保它可以在我的图表中正确呈现。

我要回答的问题是:动态构建上述数组的最快和最简单的方法是什么?通过 PHP 中的循环,我可以想象,但我无法理解那会是什么样子。

我可能遗漏了您需要帮助的信息,所以这只是为了让事情顺利进行。

谢谢!

【问题讨论】:

  • 您是否尝试过首先使用while 循环使用 PHP(和 MySQL)构建数组,然后 inside 将“branch”元素和适当的值附加到您的循环中你的阵列?如果您可以先使用所有数据正确构建数组,我建议您使用 json_encode 而不是尝试编写自己的 json 序列化程序。
  • 感谢 Jared,我正在使用 json_encode - 我绝不会尝试创建自己的序列化程序!将“分支”元素附加到我的数组中的正确语法是什么?

标签: php mysql arrays json


【解决方案1】:

看这个话题:Looping a multidimensional array in php

您可以使用 foreach 构造循环遍历数组

【讨论】:

    猜你喜欢
    • 2012-09-02
    • 2014-02-01
    • 1970-01-01
    • 2011-07-17
    • 2021-12-19
    • 1970-01-01
    • 1970-01-01
    • 2020-05-25
    • 1970-01-01
    相关资源
    最近更新 更多