我有file1.php
获取数据并希望返回客户端。它在其顶部加载另一个php文件:require_once '/utils/file2.php';
功能returnJson()
位于file2.php
,如下所示:
function returnJson( $param1, $param2 ) {
$res = [
'timestamp' => time()
];
if ( isset( $param1 ) ) $res['param1'] = $param1;
if ( isset( $param2 ) ) $res['param2'] = $param2;
echo json_encode( $res );
exit;
}
在file1.php
结束时,它会调用returnJson( $param1, $param2 )
。 $param1
和$param2
都有值。
然后在客户端,我只有timestamp
的json结果,但是缺少其他两个参数。
{
"timestamp": 1470271525
}
所以我更改returnJson
函数,在$res
中添加参数而不检查:
function returnJson( $param1, $param2 ) {
$res = [
'timestamp' => time(),
'param1' => $param1,
'param2' => $param2
];
echo json_encode( $res );
exit;
}
然后在客户端我得到了像这样的json:
{
"timestamp": 1470271525,
"param1": null,
"param2": null
}
答案 0 :(得分:0)
这意味着您传递给函数的一个或两个参数的值,例如returnJson($var1, $var2)
,是空的,而不是您没有传递它们。 <{1>} 函数调用前的变量,var_dump()
看看它们是什么值。然后检查拼写错误,按照他们的代码路径回到他们设置的地方等等。