【发布时间】:2012-08-23 05:11:48
【问题描述】:
我在返回一个数组对象然后显示给用户时出现问题,请看演示代码。一个基本的sn-p,但它有相同的想法,我只是不能在这里发布很长的代码。
Class foobar{
public function foo()
{
return array( 'bar' => 'value' );
}
}
这个 php 代码被另一个类使用了
Class foobar_fetcher{
public function getFoo()
{
$fb = new foobar();
$result = $fb->foo();
return $result;
}
}
foobar_fetcher 再次由主执行程序文件 (ajaxdispatcher.php) 调用 - 带有 json 标头。
if( isset( $_POST['fetch'] ) ){
$httpresponse = new stdClass();
$fb_fetch = new foobar_fetcher();
$httpresponse->data = $fb_fetch->getFoo();
}
echo json_encode( $httpresponse );
最后这个 ajaxdispatcher 被一个 jquery ajax 调用了。
$.ajax({
url: 'ajaxdispatcher.php',
type: 'post',
data: {fetch:'fetch'},
success: function( data ){
if( data ) console.log( data );
}
});
现在,当我尝试打印数据时,服务器没有响应。 但是当我将 foobar 类下的 foo() 的返回值更改为整数或字符串时。一切都会好起来的。
【问题讨论】:
-
无法重现,似乎有效,这是实际代码吗?或伪:codepad.org/yAv7aX2J