在我的应用程序中,我正在制作卷曲请求并作为回应获取数组,但不知道操纵该数组 is_array()不承认这是一个数组。
curl请求的代码是:
$curls="http://localhost/myapp/alertentryxml.php?".$compurl;
$ch = curl_init();
curl_setopt($ch,CURLOPT_URL,$curls);
curl_setopt($ch,CURLOPT_RETURNTRANSFER,1);
$store = curl_exec($ch);
使用
从 alertentryxml.php 生成多维数组print_r($data);
$ data 是多维数组。
当我在上面的 $ store 变量中检查了响应时,它会显示响应中的数组但不能用作数组。 我在这里做错了什么? 是否可以发送数组作为响应?
答案 0 :(得分:1)
你不能只做一个print_r($data)
并希望PHP能够将它作为一个数组进行交互,它只是文本。查看print_r的作用:
打印有关变量的人类可读信息
你应该做的是:
alertentryxml.php
echo json_encode($data);
然后在你的curl请求中:
$store = json_decode(curl_exec($ch));
我在这个实例中选择了JSON,因为这是我个人的偏好,但你也可以将数据作为XML或任何其他格式发送,只要你解码它就像在另一端编码一样。