檢查 PHP 中是否存在某 Post
-
檢查
$_POST
是否存在於isset()
-
使用
Empty()
函式檢查$_POST
是否存在 -
檢查
$_POST
是否存在isset()
函式和空字串檢查 -
檢查
$_POST
是否存在否定運算子
PHP $_POST
是一個超級全域性變數,可以包含通過 post 方法提交的 HTML 表單資料的鍵值對。我們將學習不同的方法來檢查 $_POST
是否存在並在本文中包含一些資料。這些方法將使用 isset()
、empty()
和空字串檢查。
檢查 $_POST
是否存在於 isset()
isset()
函式 是一個 PHP 內建函式,可以檢查是否設定了變數,而不是 NULL。此外,它適用於陣列和陣列鍵值。PHP $_POST
包含陣列鍵值,因此 isset()
可以處理它。
要檢查 $_POST
是否存在,請將其作為值傳遞給 isset()
函式。同時,你可以檢查使用者是否提交了特定的表單輸入。如果使用者提交了一個表單輸入,它將在 $_POST
中可用,即使它是空的。
下面的 HTML 為我們提供了一些可以使用的東西。它有一個帶有預填充名稱欄位的表單欄位。
<form method="post" action="<?php echo $_SERVER['PHP_SELF'];?>">
<label>First Name</label>
<input type="text" name="first_name" value="DelftStack">
<input type="submit">
</form>
當你單擊提交按鈕時,以下 PHP 將檢查 $_POST
是否存在:
<?php
if (isset($_POST['first_name'])) {
$first_name = $_POST['first_name'];
echo $first_name;
}
?>
輸出:
DelftStack
使用 Empty()
函式檢查 $_POST
是否存在
你可以使用 empty()
函式 檢查 $ _POST
的存在。但是,empty()
函式將在以下情況下返回 true
:
- 當所有
$_POST
值都是空字串時 - 引數為零
下面的 HTML 和上一個一樣,這一次,名稱不同:
<form method="post" action="<?php echo $_SERVER['PHP_SELF'];?>">
<label>First Name</label>
<input type="text" name="first_name" value="Mathias Jones">
<input type="submit">
</form>
下一個程式碼塊將向你展示如何使用 empty()
函式檢查 $_POST
:
<?php
if (!empty($_POST)) {
$first_name = $_POST['first_name'];
echo $first_name;
}
?>
輸出:
Mathias Jones
檢查 $_POST
是否存在 isset()
函式和空字串檢查
如果 $_POST 的值為空字串,則 isset()
函式返回 true,但對於 NULL 值,它將返回 false。如果你嘗試列印 isset($_POST['x']) = NULL
和 isset($_POST['x']) = ''
的值,在這兩種情況下,你都會得到一個空字串.
因此,你將需要檢查空字串。isset()
和空字串檢查的組合消除了 $_POST
在你處理其資料之前包含空字串的可能性。
在下一個程式碼塊中,我們有一個 HTML 可供使用:
<form method="post" action="<?php echo $_SERVER['PHP_SELF'];?>">
<label>First Name</label>
<input type="text" name="first_name" value="Mertens Johanssen">
<input type="submit">
</form>
檢查 $_POST
是否存在:
<?php
if (isset($_POST['first_name']) && $_POST['first_name'] !== "") {
$first_name = $_POST['first_name'];
echo $first_name;
}
?
輸出:
Mertens Johanssen
檢查 $_POST
是否存在否定運算子
否定運算子 (!) 會將真陳述變為假,將假陳述變為真。因此,你可以使用否定運算子檢查 $_POST
是否存在。要檢查 $_POST
,請在 if-else 語句中新增否定運算子。
在第一部分,如果 $_POST
為空,你可以停止對其資料的 p 處理。在條件的第二部分,你可以處理資料。
首先,HTML:
<form method="post" action="<?php echo $_SERVER['PHP_SELF'];?>">
<label>First Name</label>
<input type="text" name="first_name" value="Marcus Alonso">
<input type="submit">
</form>
下一個程式碼塊演示了使用否定運算子檢查 $_ POST
是否存在。
<?php
if (!$_POST) {
echo "Post does not exist";
} else {
$first_name = $_POST['first_name'];
echo $first_name;
}
?>
輸出:
Marcus Alonso
Habdul Hazeez is a technical writer with amazing research skills. He can connect the dots, and make sense of data that are scattered across different media.
LinkedIn