我正在尝试将我的 Web 服务的结果作为数组获取,然后循环遍历结果以获取所有数据;到目前为止我做了什么:
在我的网络服务中,当我返回我使用的结果时
return json_encode($newFiles);
结果如下:
"[{\"path\":\"c:\\\\my_images\\\\123.jpg\",\"ID\":\"123\",\"FName\":\"John\",\"LName\":\"Brown\",\"dept\":\"Hr\"}]"
然后在我的 Web 应用程序中,我通过 RestService 类中的以下代码调用其余 Web 服务:
public function getNewImages($time) {
$url = $this->rest_url['MyService'] . "?action=getAllNewPhotos&accessKey=" . $this->rest_key['MyService'] . "&lastcheck=" . $time;
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$data = curl_exec($ch);
if ($data) {
return json_decode($data);
} else {
return null;
}
}
然后在我的控制器中,我有以下代码:
public function getNewImgs($time="2011-11-03 14:35:08") {
$newImgs = $this->restservice->getNewImages($time);
echo json_encode$newImgs;
}
and I'm calling this `enter code here`controller method by AJAX:
$("#searchNewImgManually").click(function(e) {
e.preventDefault();
$.ajax({
type: "POST",
async: true,
datatype: "json",
url: "<?PHP echo base_url("myProjectController/getNewImgs"); ?>",
success: function(imgsResults) {
alert(imgsResults[0]);
}
});
});
但不是给我第一个对象,而是给我引号(结果的第一个字符)“
这是为什么?我以 JSON 格式传递,在 AJAX 中我提到数据类型为“JSON”!
如果您需要更多说明,请告诉我!谢谢 :)