如何確定$ _POST是否爲空?我想根據是否提交ID來執行if/else,以確定記錄是應該插入MySQL數據庫還是更新。
我會用isset($_POST["ID"])
嗎?
如何確定$ _POST是否爲空?我想根據是否提交ID來執行if/else,以確定記錄是應該插入MySQL數據庫還是更新。
我會用isset($_POST["ID"])
嗎?
PHP中幾個用於此。
爲此目的,人們使用empty或isset。許多人使用這個,不考慮差異。
本文檔中的示例清楚地顯示了區別。
$var = 0;
// Evaluates to true because $var is empty
if (empty($var)) {
echo '$var is either 0, empty, or not set at all';
}
// Evaluates as true because $var is set
if (isset($var)) {
echo '$var is set even though it is empty';
}
在這種特殊情況下,你應該使用空,而不是isset,因爲變量可以設置,但空。
你需要使用空():
if (!empty($_POST["ID"])) {
//rest of code here
}
你不應該在這裏使用'empty',因爲它會給諸如'「0」之類的值帶來錯誤的否定。改用'isset'。 – shanethehat
是的,使用'isset($ _ POST ['key'])''。你也可以使用'array_key_exists('key',$ _POST)',但'isset()'很簡單易讀。 –
@Michael我想'isset()'是用來檢查'$ _POST ['ID']'是否存在,而不是它是否有值? – RobFos
@ Rawb92 true,你永遠不應該爲$ _POST值使用isset()。 –