定義と使い方
- PHPバージョン
- 4+
is_bool() 関数は、指定された値が論理型(boolean)であるかを確認します。引数として渡された値が論理型であれば true を返し、そうでなければ false を返します。
論理型(boolean、またはブーリアン)は、2つの値のうちの1つである true(真)または false(偽)のみを表現するデータ型です。
PHPでは整数や文字列も条件式において論理値のように評価されることがありますが、論理型自体は true と false の2つの値のみを持ちます。
基本例
/* 論理型(boolean) */
var_dump(is_bool(true)); // bool(true)
var_dump(is_bool(false)); // bool(true)
/* 数値 */
var_dump(is_bool(1)); // bool(false)
var_dump(is_bool(0)); // bool(false)
/* 文字列 */
var_dump(is_bool('hello')); // bool(false)
var_dump(is_bool('true')); // bool(false)
var_dump(is_bool('false')); // bool(false)
/* 比較演算子(例:===, !== など)の結果は常に論理型(boolean)の値 */
var_dump(is_bool(1 === 1)); // bool(true)
var_dump(is_bool(1 !== 1)); // bool(true)
ご参考ください!gettype() 関数は、指定された値のデータ型を文字列として返します。
構文
is_bool(mixed $value): bool
引数
$value |
必須。論理型(boolean)であるかを確認する値です。 |
|---|
戻り値
引数として渡された値が論理型であれば true を返し、そうでなければ false を返します。
注意点
is_bool()関数は、値が論理型(boolean)と正確に一致する場合のみ true を返します。したがって、以下のような例ではそれぞれ false を返します。
$a = null;
$b = '';
$c = 0;
var_dump(is_bool($a)); // bool(false)
var_dump(is_bool($b)); // bool(false)
var_dump(is_bool($c)); // bool(false)
活用例
is_bool()関数は、以下のような場合に使用すると便利、または有用です。
変数が論理型(boolean)であるかを確認する場合
変数が論理型(boolean)であるかを確認する必要がある場合、is_bool() 関数を使用するとコードを簡潔に記述できます。例えば、以下のコードは変数が論理型であるかを確認し、それに応じて異なる処理を実行します。
$a = true;
if (is_bool($a)) {
echo '変数 a は論理型(boolean)です。';
} else {
echo '変数 a は論理型(boolean)ではありません。';
}
// 出力: '変数 a は論理型(boolean)です。'
条件文で使用する場合
条件文で変数が論理型(boolean)であるかを確認する場合、is_bool() 関数を使用するとコードを明確に記述できます。例えば、以下のコードは変数が true である場合のみ、特定の処理を実行します。
$a = true;
if (is_bool($a) && $a === true) {
echo '変数 a は TRUE です。';
} else {
echo '変数 a は TRUE ではありません。';
}
// 出力: '変数 a は TRUE です。'
関数の引数として使用する場合
関数の引数が論理型(boolean)である必要がある場合、is_bool() 関数を使用して変数が論理型であるかを確認できます。例えば、以下のコードは関数の引数として変数を渡す前に、is_bool() 関数を使用して変数が論理型であることを確認しています。
function my_function($bool) {
if ($bool === true) {
echo '変数は TRUE です。';
} else {
echo '変数は TRUE ではありません。';
}
}
$a = 1;
my_function(is_bool($a)); // 出力: '変数は TRUE ではありません。'