只是想知道我的curl命令中是否存在一个设置,它阻止数据作为json字符串返回,而是将其作为数组返回。
$cmd='curl -d @/home/wazilly/public_html/recipe.json -H "Content-Type:
application/json" "https://api.edamam.com/api/nutrition-details?
app_id=XXXXX&app_key=97d3b48d3a8366572c8012a142e28f50"';
exec($cmd,$result);
echo $result; //prints Array
答案 0 :(得分:0)
根据documentation,exec
总是将一个数组作为其第二个参数,它将填充所执行命令的所有输出行。
var_dump()
上$result
进行确定。但既然你正在处理卷曲,为什么不简单地使用PHP curl extension?
答案 1 :(得分:0)
在PHP manual中检查exec()的原型:
string exec ( string $command [, array &$output [, int &$return_var ]] )
PHP返回一个数组。如果你想要原始输出,我认为它实际上可能是JSON,请尝试这样做:
$result = shell_exec($cmd);
echo $result;
答案 2 :(得分:0)
我建议您使用json_encode(array())
echo json_encode($result);