試圖找到最佳解決方案。我有一個表單需要兩個輸入:input1和input2。我使用JavaScript來驗證這些字段 - 只要其中一個填寫正確無誤。php處理多個API調用
目前,我有以下PHP(除去包含)
if (isset($_POST["input1"]) && !empty($_POST["input1"])){
$input1 = $_POST["input1"];
$connection = new APIConnection1();
$response = $connection->obtainResponse($input1);
}
if (isset($_POST["input2"]) && !empty($_POST["input2"])){
$input2 = $_POST["input2"];
$connection = new APIConnection2();
$response = $connection->obtainResponse($input2);
}
因此,如果輸入1有數據 - APIConnection1被調用。 如果input2有數據 - APIConnection2被調用。 如果它們都有有效的數據 - 兩個API都被調用。所以每個輸入都有自己的API(不同)。
這是我的問題。我現在有第三個API,可以稱之爲APIConnection3。如果爲input1返回的響應爲true,則需要將input1發送到APIConnection3。同樣適用於input2。
問題是,我不能在上面的if語句中真正地調用這些調用,因爲它會分別調用APIConnection3。所以我需要以某種方式執行上面的if語句,然後將整個數據發送到APIConnection3。
因此,如果同時輸入1和輸入2返回true,我想打一個電話,這將是
APIConnection3($input1, $input2);
如果只有一個返回true,那麼就應該是這樣的
APIConnection3($input1);
那麼我會如何處理這個問題呢?
謝謝
那是真正有用的,作品充滿了想象。一個奇怪的事情,但。在我的obtainResponse函數中,我嘗試循環參數數組。它抱怨說它爲foreach()提供了一個無效參數。我在這裏錯過了什麼嗎? –
參數作爲單個變量傳遞,因此您的函數應該會有0到2個參數。所以你可以像這樣聲明方法:obtainResponse($ response1 = null,$ response2 = null)。我編輯了答案,因此params數組應該包含response1和/或response2。 – eselskas