PHP 从字符串恢复 JSON 文件的函数?
PHP Function to Restore JSON File from String?
我有一个 PHP 脚本可以从另一个程序中提取数据;该程序将其数据输出为单个 JSON 文件。但是出于我永远无法理解的原因,另一个程序的作者决定从 JSON 文件中删除所有换行符和空格,并将整个输出作为一个巨大的字符串提交:
{"John":{"status":"Wait"},"Jennifer":{"status":"Active"},"James":{"status":"Active","age":56}}
这几乎没用。我需要我的 PHP 脚本来获取上述内容并将原始文件重建为人类可读的格式:
{
"John": {
"status":"Wait"
},
"Jennifer": {
"status":"Active"
},
"James": {
"status":"Active",
"age":56
}
}
我可以从头开始开发这样的方法,但那会很痛苦。我一直在阅读 json_decode()
,我相信它可以帮助我解析原始字符串,但不能真正重建原始文件。有谁知道图书馆或可能有帮助的东西?谢谢
您可以分两步完成:
- 将JSON字符串解码为PHP数组
- 使用选项 JSON_PRETTY_PRINT
再次编码
echo json_encode(json_decode($json_text, true), JSON_PRETTY_PRINT);
我有一个 PHP 脚本可以从另一个程序中提取数据;该程序将其数据输出为单个 JSON 文件。但是出于我永远无法理解的原因,另一个程序的作者决定从 JSON 文件中删除所有换行符和空格,并将整个输出作为一个巨大的字符串提交:
{"John":{"status":"Wait"},"Jennifer":{"status":"Active"},"James":{"status":"Active","age":56}}
这几乎没用。我需要我的 PHP 脚本来获取上述内容并将原始文件重建为人类可读的格式:
{
"John": {
"status":"Wait"
},
"Jennifer": {
"status":"Active"
},
"James": {
"status":"Active",
"age":56
}
}
我可以从头开始开发这样的方法,但那会很痛苦。我一直在阅读 json_decode()
,我相信它可以帮助我解析原始字符串,但不能真正重建原始文件。有谁知道图书馆或可能有帮助的东西?谢谢
您可以分两步完成:
- 将JSON字符串解码为PHP数组
- 使用选项 JSON_PRETTY_PRINT 再次编码
echo json_encode(json_decode($json_text, true), JSON_PRETTY_PRINT);