0

空ではない入力ボックスの数を見つけようとしていますが、毎回値が 1 になっています。私は何を間違っていますか?

foreach( $_POST as $key=> $value ) {
    if ($value!='' && $key!='add') {
        $count =  count($value);
    }  
}
echo $count;
4

1 に答える 1

5

$count変数をインクリメントするのではなく、変数を再定義するだけです(配列ではないため、常にcount($value)そうです)。1$value

代わりにインクリメント演算子を使用して$count、必要に応じて に 1 を追加します。

$count ++;

また、おそらくempty(..)次のように、チェックに使用することをお勧めします。

$count = 0;
foreach($_POST as $key => $value)
{
    if($key != 'add' && !empty($value))
    {
        $count++;
    }
}
echo $count;
于 2013-01-21T16:10:53.537 に答える