【发布时间】:2011-10-29 06:04:07
【问题描述】:
我正在尝试从 php 数组构建 JSON 数组 这是我在控制器中的功能
function latest_pheeds() {
if($this->isLogged() == true) {
$this->load->model('pheed_model');
$data = $this->pheed_model->get_latest_pheeds();
$last = end($data);
echo "[";
for($i = 0; $i < count($data); $i++) {
echo '{"user_id":"'.$data[$i][0]['user_id'].'",';
echo '"pheed_id":"'.$data[$i][0]['pheed_id'].'",';
echo '"pheed":"'.$data[$i][0]['pheed'].'",';
echo '"datetime":"'.$data[$i][0]['datetime'].'",';
if($i == count($data)) {
echo '"comments":"'.$data[$i][0]['comments'].'"}';
}else {
echo '"comments":"'.$data[$i][0]['comments'].'"},';
}
}
echo "]";
}
return false;
}
它返回一个像这样的json数组
[{"user_id":"9","pheed_id":"2","pheed":"This is my first real pheed, its got potential ","datetime":"1313188898","comments":"0"},{"user_id":"9","pheed_id":"11","pheed":"My stomach being hurting all day","datetime":"1313422390","comments":"0"},{"user_id":"9","pheed_id":"11","pheed":"My stomach being hurting all day","datetime":"1313422390","comments":"0"},{"user_id":"9","pheed_id":"10","pheed":"Thank God for stackoverflow.com ","datetime":"1313358605","comments":"0"},]
但我似乎无法使用 jquery 访问它
【问题讨论】:
-
你需要那个逗号吗
-
你是如何尝试用 jQuery 访问它的?
-
正如建议的那样,末尾的逗号破坏了 json 解码。此外,正如@derekerdmann 的提问者所建议的那样,为此使用 json_encode,这就是它的意义所在。
-
是的,只需将您的 PHP 数组 交给 json_encode() 函数即可。
-
我在 PHP 和 javascript 之间一直使用 json_encode。您应该重新访问您的代码并执行相同的操作。无需自己包装。
标签: php javascript mysql json codeigniter