ホームページ > バックエンド開発 > PHPチュートリアル > PHP の型を理解する – ブール値

PHP の型を理解する – ブール値

Mary-Kate Olsen
リリース: 2024-10-21 10:48:02
オリジナル
689 人が閲覧しました

Understanding PHP Types – Booleans

ブール値とは何ですか?

PHP では、ブール値は 2 つの値のみを持つことができるデータ型です。

  • true: 肯定的または肯定的な状態を表します。
  • false: 否定または偽の状態を表します。

ブール値は、条件ステートメント、比較、論理演算でよく使用されます。 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 を返します:

  • ブール値 false 自体
  • 整数値 0
  • 浮動小数点値 0.0 および -0.0
  • 空の文字列、「」
  • 単一のゼロを含む文字列、「0」
  • 空の配列
  • タイプ null
  • 設定されていない変数
  • その他の複雑な値

リソースや 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 には、ブール値を返すさまざまな比較演算子が用意されています。

  • 等価 (==): 値が等しいかどうかを確認します。
  • Identity (===): 値と型が同一かどうかを確認します。
  • 不等式 (!= または <>): 値が等しくないかどうかを確認します。
  • Non-identity (!==): 値または型が同一でないかどうかをチェックします。
  • 大なり (>) および小なり (<): 数値の比較に使用されます。

例:

 5);     // Output: bool(true)  - 10 is greater than 5
var_dump($a != 10);   // Output: bool(false) - 10 is equal to 10
?>






論理演算子とブール値

論理演算子は、ブール式を結合または否定するために使用されます。

  • && (AND): 両方のオペランドが true の場合に true を返します。
  • || (OR): 少なくとも 1 つのオペランドが true の場合、true を返します。
  • ! (NOT): ブール式を否定します。

例:

<?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)
?>
ログイン後にコピー

ブール演算に関するいくつかの注意事項


1. 緩やかな比較

== を使用すると、型のジャグリングにより予期しない結果が生じる可能性があります。厳密な比較には常に === を使用します。

例:

<?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 は等しいとみなされます。


2. 偽りの価値観

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
ログイン後にコピー
ログイン後にコピー

3. 短絡評価

論理演算子 && および ||短絡評価を使用してください。これは、結果が最初のオペランドによって決定される場合、2 番目のオペランドは評価されないことを意味します。

例:

<?php
$isUserLoggedIn = true;

if ($isUserLoggedIn) {
    echo "Welcome, User!"; // This message will be displayed
} else {
    echo "Please log in.";
}
?>
ログイン後にコピー
ログイン後にコピー

4. 大文字と小文字の区別

true と false は大文字と小文字を区別しないため、True、FALSE、fAlSe は有効ですが、一貫性を保つために推奨されません。

以上がPHP の型を理解する – ブール値の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:dev.to
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート