関数の概要
PHPの empty 関数は、変数が空であるかどうかを簡単に判定するための便利な関数です。空(empty)とは、値が「null」「空文字」「0」「’0’」「false」「空の配列」など、値が存在しないか実質的に無い状態を指します。この関数を使うことで、変数の状態を安全かつ簡潔にチェックできます。
パラメータの説明
$var(必須):チェックしたい変数です。変数が未定義でもエラーを出さずに判定できます。
戻り値
empty 関数は、渡した変数が空の場合に true を返し、空でない場合には false を返します。
使用例
基本的な使い方
<?php
$name = "";
if (empty($name)) {
echo "名前は空です。";
} else {
echo "名前は入力されています。";
}
?>
この例では、$name が空文字なので empty は true を返し、「名前は空です。」が表示されます。
未定義の変数をチェック
<?php
if (empty($undefinedVar)) {
echo "変数は未定義か空です。";
}
?>
empty は未定義の変数でもエラーにならず、空と判定するため安全にチェックできます。
さまざまな値を判定
<?php
$values = [null, false, 0, '0', '', [], 'hello'];
foreach ($values as $val) {
if (empty($val)) {
echo "空の値ですn";
} else {
echo "空ではない値ですn";
}
}
?>
このコードは、配列内の値を一つずつ判定し、空かどうかを判別します。null、false、0、’0’、空文字、空配列はすべて空として扱われ、「hello」だけが空でない値として認識されます。
関連する関数
isset:変数が定義されていて null でないかを調べるis_null:変数が null かどうかを調べるstrlen:文字列の長さを調べる(空文字かどうか判定の一助になる)
まとめ
empty 関数は、変数が空かどうかを簡単に確認できるPHPの便利なツールです。未定義の変数でも安全に扱えるため、入力チェックや条件分岐でよく使われます。値が「空」である概念が広いため、使う際は何が「空」と判断されるかを理解しておくことが重要です。
