このような配列があるとします。
$array = array('', '', 'other', '', 'other');
指定された値(例では空白)を持つ数を数えるにはどうしたらよいですか?
そして、それを効率的に行うには?(数百の要素を持つ十数個の配列について) この例はタイムアウトします(30秒以上)。
function without($array) {
$counter = 0;
for($i = 0, $e = count($array); $i < $e; $i++) {
if(empty($array[$i])) {
$counter += 1;
}
}
return $counter;
}
この場合、空白の要素数は3です。
この方法がより速いかどうかは分かりませんが、試してみる価値はあると思います。
$counter = 0;
foreach($array as $value)
{
if($value === '')
$counter++;
}
echo $counter;