【发布时间】:2015-11-23 15:30:25
【问题描述】:
将以下 JSON 数据视为字符串
'{"prop0":"true", "prop1":
[
{"prop0":"false", "prop1":"true", "prop2":
[
{"prop0":"false"}
]
}
]
}'
这个结构是动态的,可能有更多的节点、子节点等。这就是我的后端接收这个“不干净”的 JSON 数据(实际上是一个字符串)的方式。对于性能问题,我试图避免解析为 JSON obj 并循环遍历每个节点以查找是否存在可以转换为布尔值的字符串。
我知道该怎么做,我只是想知道是否会有一个“神奇”的解决方案将“true”替换为 字符串中的 true,类似于
str_replace("true", true, $data);
这显然行不通。毕竟我需要的是删除布尔值周围的引号。有谁知道快速的方法吗?
【问题讨论】:
-
这个 JSON 字符串是如何生成的?你不能正确生成/
-
str_replace(true, true, $data)