2016-08-12 4 views
-1

PHPでは、値のセットを返す配列を持っています。私はゼロを除いて配列内のインスタンスの数を数えたいと思います。基本的に私はテーブルに平均的な合計の列を作成していて、人が貢献しなかった場合は、それらを数えたくありません。私は合計金額を持っていますが、それは総計金額ではありません。助けてください?ゼロを除くPHPカウンタ

+1

'array_filter'、' count' –

+0

マイケルを、質問を保存し、あなたのコードを貼り付け、あなたの質問の下で "編集" をクリックしてください。あなたのコードを見て、あなたを助ける方法を理解する必要があります。 –

答えて

2

countarray_filterの方法で行うことができます。

countは、配列内の要素の総数を示します。

array_filterは、値がfalse(空の文字列など0など)を表すすべての要素を配列から削除します。

例:

echo count(array_filter($your_array)); 
0

使用foreach配列を反復し、「ゼロ」ではないアイテムをカウントします。

$counter = 0; 

foreach ($array as $item) { 
    if (/* determine if $item is "not zero" */) { 
     ++$counter; 
    } 
} 

echo $counter; 

これは、あなたが提供した情報に基づいて私があなたに伝えることができます。

0

2番目のパラメータとして、array_filterにコールバック関数を与えることができます。 (http://php.net/manual/en/function.array-filter.php

array array_filter (array $array [, callable $callback [, int $flag = 0 ]]) 

は、だから、このような何かを行うことができます。

function isNonZero(int $num){ 
    return $num !== 0; 
} 

count(array_filter([0,1,2,3,4], "isNonZero")); // => 4 
関連する問題