[PHP] 論理型 boolean
もくじ
記事内に商品のプロモーションを含む場合があります。
使い方
論理型を使うには、定数のTURE or FALSEを使います。
大文字・小文字のどちらでも使えるのでture or falseでも使うことができます。
どちらの書き方でもいいですが、どちらかに統一はしておきましょう。
プロジェクトにコーディングルールがある場合は、それに従います。
サンプル
大文字(TRUE or FALSE)の例
1<?php
2
3$big_true = TRUE;
4$big_false = FALSE;
5
6// TRUEの例
7if ($big_true === TRUE)
8{
9 echo "big_true: TRUE", "\n";
10}
11if ($big_true)
12{
13 echo "big_true: TRUE", "\n";
14}
15
16// FALSEの例
17if ($big_false === FALSE) {
18 echo "big_false: FALSE", "\n";
19}
20if (!$big_false) {
21 echo "big_false: FALSE", "\n";
22}
小文字(true or false)の例
1<?php
2// 小文字のtrue / false
3
4// trueの例
5$small_true = true;
6$small_false = false;
7if ($small_true === true)
8{
9 echo "small_true: TRUE", "\n";
10}
11if ($small_true)
12{
13 echo "small_true: TRUE", "\n";
14}
15
16// falseの例
17if ($small_false === false) {
18 echo "small_false: FALSE", "\n";
19}
20if (!$small_false) {
21 echo "small_false: FALSE", "\n";
22}
キャストについて
明示的にキャストを使う場合はboolかbooleanを使います。
変換時の注意点
キャストで変換する時にFALSEに変換される値に注意します。
- boolean の FALSE
- integer の 0 (ゼロ)
- float の 0.0 (ゼロ)
- 空の文字列、 および文字列の “0”
- 要素の数がゼロである 配列
- 特別な値 NULL (値がセットされていない変数を含む)
- 空のタグから作成された SimpleXML オブジェクト
<a href="https://www.php.net/manual/ja/language.types.boolean.php" >PHP Manual 論理型(boolean)より引用</a>
サンプル
boolを使ったキャスト
1<?php
2
3// (bool)のキャストの例
4$bool_value = (bool) 1;
5if ($bool_value === true)
6{
7 echo "bool_value is true", "\n";
8}
9
10$false_value = 0;
11$bool_value = (bool) 0; // integerの0はfalseになる
12if ($bool_value === false)
13{
14 echo "bool_value is false", "\n";
15}
booleanを使ったキャスト
先程のboolを使ったサンプルと同じで、boolの部分がbooleanになっています。
1<?php
2
3// (boolean)のキャストの例
4$boolean_value = (boolean) 1;
5if ($boolean_value === true)
6{
7 echo "boolean_value is true", "\n";
8}
9
10$boolean_value = (boolean) 0; // integerの0はfalseになる
11if ($boolean_value === false)
12{
13 echo "boolean_value is false", "\n";
14}