empty

empty関数:変数が空っぽかどうかを調べる

使い方

$is_empty = empty( $var );

昨日の関数はなんかPHPのマニュアル本みたいな紹介をしてしまったので、反省しています。。。
気を取り直して、今日はempty関数です。
その名の通り、空っぽかどうか判断してくれるんです。
if(empty( $my_brain ) === true) なんてバカなこと考えたくもなりませんかね?なりませんね。。。。

empty関数は引数として渡された変数が空っぽかどうかを判断してくれるのです。
空っぽとはどういう状態かと言うと、こんな時です。

“” (空文字列)
0 (整数 の 0)
0.0 (浮動小数点数の 0)
“0″ (文字列 の 0)
NULL
FALSE
array() (空の配列)
$var; (変数が宣言されているが、値が設定されていない)

※PHPの公式サイトより抜粋

PHPの公式サイトにも書かれていますが、empty(trim($var))なんてコードを書いてしまいがちですよね。
でもこれはダメです。empty関数の引数が変数ではないからです。
そういう時にはempty(trim($var) == false)と言う風に書きなさいと公式サイトはおっしゃっています。個人的には読みにくくなるのでこういう書き方はあまり好きではありませんが。

が、しかし!!
公式サイトによれば、PHP5.5からはついに関数を直接書いてもよくなりました!すんばらしい!
※自分はまだ試したことアリマセンのであしからず。

使いどころ

この関数、実はすごくすごく役に立つのです。
初心者の方はよくパラメータのバリデーションなんかでif($var["not_found_key"] != “”) みたいなことをやって”PHP Notice: Undefined index…”がたくさん表示されてしまうという壁にぶつかるかと思うのですが、
毎回、!isset($var["not_found_key")) || $var["not_found_key"] == “” なんてコードを書いたりしてませんか?
そうです。このempty関数はそれを一発で解決してくれるのです。
いつもお世話になっております。empty関数様!

公式サイト
http://jp1.php.net/manual/ja/function.empty.php