2016-08-04 42 views
-2

我有file1.php,它獲取數據並希望返回到客戶端。它加載另一個PHP文件在自身的頂部:require_once '/utils/file2.php';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

你是什麼意思「不帶任何參數」?具體描述問題。不要告訴我們你認爲問題是什麼,請描述你有什麼跡象表明首先存在問題。另外,你在哪裏/如何調用這個函數?發佈的代碼「不帶任何參數」,因爲該函數從未被調用過。 – David

+0

關於編輯:給出這個信息,傳遞給函數的值是'null'似乎是合理的。是什麼讓你覺得他們不會'空'?你在哪裏設置它們?你已經做了什麼調試來確認這些值已設置? – David

+0

我確定它們不是'null',因爲在傳遞給'returnJson()'之前'print_r()'。 – noob

回答

0

它我請確定您傳遞給該函數的一個或兩個參數的值,例如returnJson($var1, $var2),爲空,不是你沒有通過它們。 var_dump()變量之前你的函數調用和die()看看他們是什麼值。然後檢查拼寫錯誤,按照他們的代碼路徑返回到他們設置的位置等。

相關問題