empty

関数の概要

PHPの empty 関数は、変数が空であるかどうかを簡単に判定するための便利な関数です。空(empty)とは、値が「null」「空文字」「0」「’0’」「false」「空の配列」など、値が存在しないか実質的に無い状態を指します。この関数を使うことで、変数の状態を安全かつ簡潔にチェックできます。

パラメータの説明

  • $var(必須):チェックしたい変数です。変数が未定義でもエラーを出さずに判定できます。

戻り値

empty 関数は、渡した変数が空の場合に true を返し、空でない場合には false を返します。

使用例

基本的な使い方

<?php
$name = "";
if (empty($name)) {
    echo "名前は空です。";
} else {
    echo "名前は入力されています。";
}
?>

この例では、$name が空文字なので emptytrue を返し、「名前は空です。」が表示されます。

未定義の変数をチェック

<?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の便利なツールです。未定義の変数でも安全に扱えるため、入力チェックや条件分岐でよく使われます。値が「空」である概念が広いため、使う際は何が「空」と判断されるかを理解しておくことが重要です。