【问题标题】:php organizing result set logic to nested JSONphp将结果集逻辑组织到嵌套的JSON
【发布时间】:2012-11-06 14:33:38
【问题描述】:

我有一个充满型号的数据库,其中包含不同长度的字符,全部由句点分隔。

Model number families:
xxxx.xx.xxxx
xxxx.xx.kjfd
xxxx.kj.jkfdk
yy.yy.a
yy.yy.b

等等。

我正在尝试将它们组织成类似于此的 JSON,当然还有适当的语法。 型号系列:

{
    "name": "xxxx",
    "children": [
        {
            "name": "xx",
            "children": [
                {
                    "name": "xxxx"
                },
                {
                    "name": "kjfd"
                }
            ]
        },
        {
            "name": "kj",
            "children": [
                {
                    "name": "jkfdk"
                }
            ]
        }
    ]

我已经开始对型号进行 preg_split 以打破型号。深入到它的组件中。然后我尝试将这段时间之前的第一个字符与前一个字符进行比较,我的大脑冻结了,我想,“必须有更好的方法来组织这些。”

将它们存储在已经分离的数据库中会更好吗?

感谢您的任何建议。

只有一个地方可以去,stackoverflow。

【问题讨论】:

  • 这与答案无关,但请接受以下建议:将来当您使用测试字符串时,请避免使用 sdsfgh 之类的东西,而是尝试使用真实姓名(从您的示例来看),有帮助你看得更清楚
  • 谢谢,有道理。我会确保下次这样做

标签: php mysql json nested logic


【解决方案1】:

将它们存储在已经分离的数据库中会更好吗?

这取决于。如果您有可能在一个地方只需要该 json 的片段,而在其他地方只需要其他片段,以避免向同一个 json 发出 10 个请求,那么将它们分别植入数据库中可能是一个更好的主意。我个人最近遇到了这个问题,更多不相关的数据被分组在同一个 json 中,我不得不在完全不同的事件中调用该 json(保存:插入/更新、加载、邮件事件的 json 数据的一部分等)。

如果您需要将所有数据放在一个位置,则将所有数据放在同一个 json 中。

你将不得不决定走哪条路。它们都没有错,主要是因为您将在下一次必须做类似的事情时学习:)

【讨论】:

  • 很棒的建议,谢谢!你描述了我害怕的一种情况。
  • 获取整个 json,解析它,然后更新一点点信息,再次对其进行字符串化并替换数据库中的整个数据(当然是更新),这让我很头疼,只是因为用户在某处进行了键盘输入。那是错误的。
  • 我对数据进行了标准化,所以每个人都有自己的表格。不过还是很困惑 :) 坚持!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-12-24
  • 2016-02-05
  • 1970-01-01
  • 1970-01-01
  • 2010-12-21
相关资源
最近更新 更多