PHP では、ブール値は 2 つの値のみを持つことができるデータ型です。
ブール値は、条件ステートメント、比較、論理演算でよく使用されます。 true と false の両方で大文字と小文字が区別されないことに注意することが重要です。したがって、true、True、truE、TRUE はすべて有効です。
値 true または false を直接割り当てることで、ブール変数を作成できます。
例:
<?php $isAvailable = true; // Boolean variable set to true $isLoggedIn = false; // Boolean variable set to false var_dump($isAvailable); // Output: bool(true) var_dump($isLoggedIn); // Output: bool(false) ?>
ここでは、変数の型と値を表示するために var_dump() 関数が使用されています。
PHP では、多くのデータ型をブール値に変換できます。 (bool) を使用して、値をブール値に型キャストできます。値が論理コンテキストで使用される場合、その値は bool 型の値として自動的に解釈されるため、通常、これは必要ありません。
ブール値に変換すると、次の値は false を返します:
リソースや NAN を含め、他の値はすべて true とみなされます。
例:
<?php $values = [0, 1, "", "Hello", [], [1, 2, 3], null, 0.0, 3.14]; foreach ($values as $value) { var_dump((bool)$value); } ?>
出力:
bool(false) // 0 bool(true) // 1 bool(false) // "" bool(true) // "Hello" bool(false) // [] bool(true) // [1, 2, 3] bool(false) // null bool(false) // 0.0 bool(true) // 3.14
ブール値は主に、プログラムのフローを制御するために、if、else、switch などの条件文で使用されます。
例:
<?php $isUserLoggedIn = true; if ($isUserLoggedIn) { echo "Welcome, User!"; // This message will be displayed } else { echo "Please log in."; } ?>
この例では、$isUserLoggedIn が true であるため、「ようこそ、ユーザー!」というメッセージが表示されます。
と表示されます。PHP には、ブール値を返すさまざまな比較演算子が用意されています。
例:
5); // Output: bool(true) - 10 is greater than 5 var_dump($a != 10); // Output: bool(false) - 10 is equal to 10 ?>
論理演算子とブール値
論理演算子は、ブール式を結合または否定するために使用されます。
例:
<?php $isAvailable = true; // Boolean variable set to true $isLoggedIn = false; // Boolean variable set to false var_dump($isAvailable); // Output: bool(true) var_dump($isLoggedIn); // Output: bool(false) ?>
== を使用すると、型のジャグリングにより予期しない結果が生じる可能性があります。厳密な比較には常に === を使用します。
例:
<?php $values = [0, 1, "", "Hello", [], [1, 2, 3], null, 0.0, 3.14]; foreach ($values as $value) { var_dump((bool)$value); } ?>
最初のケースでは、大まかに比較すると 0 は false に変換されるため、0 と false は等しいとみなされます。
0、「0」、空の配列などの特定の値は false とみなされ、場合によっては論理エラーが発生する可能性があります。
例:
bool(false) // 0 bool(true) // 1 bool(false) // "" bool(true) // "Hello" bool(false) // [] bool(true) // [1, 2, 3] bool(false) // null bool(false) // 0.0 bool(true) // 3.14
論理演算子 && および ||短絡評価を使用してください。これは、結果が最初のオペランドによって決定される場合、2 番目のオペランドは評価されないことを意味します。
例:
<?php $isUserLoggedIn = true; if ($isUserLoggedIn) { echo "Welcome, User!"; // This message will be displayed } else { echo "Please log in."; } ?>
true と false は大文字と小文字を区別しないため、True、FALSE、fAlSe は有効ですが、一貫性を保つために推奨されません。
以上がPHP の型を理解する – ブール値の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。