用json_encode创建JSON或制作“faux”json?

时间:2013-11-01 17:19:06

标签: php json

我需要通过JSON从我的网站访问一些变量。

所有选项都将始终定义。我的问题是,创建一个faux-json还是使用json_encode更好。人造json看起来像这样:

{
    "data": [
        {
            "optA": "<?php echo($optA); ?>",
            "optB": "<?php echo($optB); ?>",
            "optC": "<?php echo($optC); ?>"
        }
    ]
}

我觉得像嵌套数组一样,使用json_ecode会增加另一个步骤。虽然,我知道一行一行的回声也增加了一些重量。

我倾向于使用json_encode,因为它被广泛使用。我的数组也不会过度复杂,但肯定比上面的例子更多。

2 个答案:

答案 0 :(得分:5)

最好使用json_encode()

首先,它会为您完成所有必要的转义,因此您可以保证您的输出是有效的JSON。

在任何情况下,如果你想格式化你的代码,缩进你的数组代码,当你把它作为PHP数组编写时,你仍然可以做。

print json_encode(array(
    "data" => array(
            "optA" => $optA,
            "optB" => $optB,
            "optC" => $optC
    )
));

请参阅,与您的硬编码JSON示例一样易于阅读和使用,但以正确的方式执行。

答案 1 :(得分:2)

使用json_encode。它不容易出错。您不会使用意外数据(例如包含新行或引号的字符串)或拼写错误来破坏您的代码。