【发布时间】:2015-04-19 00:45:05
【问题描述】:
我有这个数组
$params_array['application_id'] = 'xxxxxxxxx';
$params_array['v'] = 1.20;
$params_array['src'] = 'http://www.google.com/logos/2011/yokoyama11-hp.jpg';
$params_array['functions']['name'] = 'blur';
$params_array['functions']['params']['radius'] = '0.0';
$params_array['functions']['params']['sigma'] = '2.0';
$params_array['functions']['save']['image_identifier'] = 'MY_CLIENT_ID';
我需要把它转成json。
所以我正在这样做:
$json = json_encode($params_array,JSON_UNESCAPED_SLASHES);
结果是
{"application_id":"xxx","v":1.2,"src":"http://www.google.com/logos/2011/yokoyama11-hp.jpg","functions":{"name":"blur","params":{"radius":"0.0","sigma":"2.0"},"save":{"image_identifier":"MY_CLIENT_ID"}}}
但是,该 json 的接收方 API 希望它的形式稍有不同,如下所示:
{"application_id":"xxx","v":1.2,"src":"http://www.google.com/logos/2011/yokoyama11-hp.jpg","functions":[{"name":"blur","params":{"radius":"0.0","sigma":"2.0"},"save":{"image_identifier":"MY_CLIENT_ID"}}]}
区别:在“functions”之后:有这个括号[,最后是闭合的。
PHP 不知何故不会用这个括号创建 json。
我怎样才能让 PHP 用这些括号创建 json?
【问题讨论】:
-
什么是接收API?
-
json_encode 的输出是正确的 JSON 语法。检查您的接收器 API,以确保这是正确的。在这里尝试不同的版本; jsoneditoronline.org