是否可以在一个php文件中使用两个json_encode()?

时间:2011-10-23 07:35:05

标签: php json

我正在尝试使用json将文本和blob图像信息从MySQL发送到iPhone App。 然而,有人告诉我,我应该分离文本和blob图像信息,因为blob在技术上不是二进制 - 因此我必须使用base64_encode()。好吧....我打算创建两个php文件,但想检查是否可以在一个php文件中执行。 :/我试过但运气不好......甚至可能吗?

3 个答案:

答案 0 :(得分:2)

您可以根据需要随时调用json_encode函数。 但是将输出放在一起并不起作用。

如果你打算这样做

print json_encode($data_array); 
print json_encode($image_blob);

然后这将导致无效的JSON 响应 与{"data":123} {"image":"PNG%...."}

一样

如果您希望在一个响应中使用它,您需要以某种方式组合数据和图像blob:

print json_encode(array_merge($data_ar, array("image"=>$image_blob)));

答案 1 :(得分:1)

是的,您只需要某种条件来决定要返回哪个JSON文档......但如果您要单独提供图像,那么您几乎肯定会更好地提供图像而不是在JSON文档中对其进行编码。

答案 2 :(得分:0)

没有这样的限制。您可以根据需要多次使用json_encode。