PHP にポストが存在するかどうかを確認する
-
$_POST
がisset()
とともに存在するかどうかを確認する -
$_POST
がEmpty()
関数とともに存在するかどうかを確認する -
$_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
$_POST
が Empty()
関数とともに存在するかどうかを確認する
empty()
関数を使用して、$ _POST
の存在を確認できます。ただし、empty()
関数は次の場合に true を返します。
- すべての
$_POST
値が空の文字列の場合 - 引数はゼロです
次の HTML は前の 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()
関数と空の文字列チェックで存在するかどうかを確認する
isset()
関数は、$ _ POST の値が空の文字列の場合は 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
が否定演算子とともに存在するかどうかを確認する
否定演算子(!)は、true ステートメントを false に変換し、false ステートメントを true に変換します。したがって、否定演算子を使用して $_POST
が存在するかどうかを確認できます。$_POST
を確認するには、if-else ステートメントの前に否定演算子を追加します。
最初の部分で、$_POST
が空の場合、そのデータの p 処理を停止できます。条件の 2 番目の部分では、データを処理できます。
まず、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