トップページ » PHPで配列のすべての値が空なのか確認する

PHPで配列のすべての値が空なのか確認する

ASPからPHPの移行で、下記のようなフォームから渡ってくる配列の中身をチェックすることになりました。
<form method="post" action="hogehoge.php">
<input type="text" name="hogehoge[]">
<input type="text" name="hogehoge[]">
</form>
ASP(textフォームの記述も違いますが)だと下記のような記述で、渡ってきた値をチェックすることができるのですが、
If Request("hogehoge").Count = 0 Then
PHPの場合は、フォームに値が入っていても入っていなくても配列として渡ってくるため、
if (empty($_REQUEST['hogehoge']) {
のようなチェックは意味がありません。
そこで、面倒でも各キーに対応する値の有無を一つずつ確認していきます。
$flg = 0;
foreach ($_REQUEST['name'] as $key => $value) {
	if (!empty($value)) {
		$flg = 1;
	}
}
if ($flg == 0) {
	echo '空';
} else {
	echo '空じゃない';
}
フォームの作り方次第で空の配列が渡ってくることを回避できるので、あまり使う機会はないと思います。 調査が足りないだけで、PHPの関数で一気に判定できる方法があれば教えて下さい。

トラックバックURL
トラックバック
1. PHPで配列の全ての値が空かどうかを判定する方法  [ ウェブネタ ]   2012年10月17日 18:14
配列の全ての値が空かどうかを、foreach文を使わず一行で調べる方法です。
コメントを書く




情報を記憶: 評価:  顔   星