配列が空の場合の判別

タイトルだけでは「何言ってんだ、コイツ」と思われそうなので、詳細を少し。

例えば、フォームなどでデータを送信する場合、post、またはgetされたデータが配列で飛びますよね。

配列がしっかりと出来上がっていれば何も問題が無いのですが、配列がちゃんと出来上がっていない場合、こうなります。

array(0) { }

ま、当然です。
この状態を判別したい場合、「配列が空」ということを定義しなくてはいけませんよね。

それを私は何も考えず、「$hensu = “”」とやって失敗しましたw

当然ですね。
この定義の場合、「$hensu」の値は配列を表す「Array」という文字が出力されます。
実際は代入されているのではなく、恐らくはPHP側が「これは配列ですよ」という警告的な意味で表示されているものだと思います。
なので、そもそも空だとかなんだとか、そういうレベルの話じゃなく形式的にイカンですよ、ということで判別が出来ませんでした。

で、配列が空の場合の判別について調べた結果、

empty($hensu)

という、empty関数を使えば判別ができる、ということを知りました。
empty()関数は、フォームから受け取ったデータが空または0であるときにTRUEが返されます。
なので、この場合は使えますね。

これで、空の配列判定もバッチシ!

コメントを残す