PHP:无法将参数传递给另一个文件中的函数

时间:2016-08-04 00:33:29

标签: php

我有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 }

1 个答案:

答案 0 :(得分:0)

这意味着您传递给函数的一个或两个参数的值,例如returnJson($var1, $var2),是空的,而不是您没有传递它们。 <{1>} 函数调用前的变量var_dump()看看它们是什么值。然后检查拼写错误,按照他们的代码路径回到他们设置的地方等等。