我有一個可以禁用或啓用的值數組,因此我想知道啓用了多少個值。這裏是一段代碼:PHP對來自數組的已啓用值進行計數
$list = array(
$variable1,
$variable2,
$variable3,
$variable4
);
$count = count($list);
感謝您的任何答覆。
更新:值不是真或假,但啓用/禁用。在這種情況下你的答案是否適用?再次感謝。
我有一個可以禁用或啓用的值數組,因此我想知道啓用了多少個值。這裏是一段代碼:PHP對來自數組的已啓用值進行計數
$list = array(
$variable1,
$variable2,
$variable3,
$variable4
);
$count = count($list);
感謝您的任何答覆。
更新:值不是真或假,但啓用/禁用。在這種情況下你的答案是否適用?再次感謝。
只需使用array_filter
$list = array(true,false,true,true);
$count = count(array_filter($list));
echo $count ;
或者
$list = array("Enable","DISABLE","ENabLE","ENABLE");
$count = count(array_filter($list,function($v) { return stripos($v, "enable") !== false; }));
echo $count ;
ENABLE
和DISABLE
長字符串,但他們開始E
& D
分別,你可以利用它來進行計數
$count = array_reduce($list,function($a,$b){$b{0} == "E" and $a++ ;return $a;},0);
echo $count ;
,他們將所有的輸出
3
剛迭代thr ough數組並對它們進行計數。
$trueValues = 0;
foreach ($list as $listItem)
{
if ($listItem)
$trueValues++;
}
echo "Array has ".$trueValues." TRUE items);
謝謝你的回答:) – thednp
$array = array('ENABLED', 'DISABLED', 'ENABLED', 'ENABLED', 'ENABLED', 'DISABLED');
$count = array_count_values($array);
會產生
array(2) {
["ENABLED"]=>int(4)
["DISABLED"]=>int(2)
}
,所以你可以把它用
$count["ENABLED"]
$list = array('ENABLE','DISABLE','ENABLE','ENABLE');
function countTrues($n)
{
if ($n == 'ENABLE'){return $n;}
}
$x = array_filter($list , "countTrues");
$count = count($x);
這應該做的伎倆
感謝您的回答,我欣賞:) – thednp
看到我QN updat e –