2017-03-24 14 views
0
$q1=15; 
$q2=12; 
$q3=23; 
$q4=0; 
$q5=0; 


$count = array ($q1, $q2, $q3, $q4, $q5); 
echo count($count); 

これは5としてカウントを取得します。 しかし、私は0で数えたいです。どうやってするか? 私はあなたがそれらの値を保存したい場合でも、引用符を使用する必要がいけない 、= 30を含まない配列値のカウント方法

+5

読む[ 'array_filter()'](http://php.net/manual/en/function.array-filter.php )。 – axiac

+4

あなたの配列を作成した方法から、その中に '0'はありません。ただsayin ' – roberto06

+1

PHP Stringsページへのリンクを投稿しなければならなかった回数の失われた数... http:// php。 net/manual/en/language.types.string.php ... '' 'は**ではありません** ''と同じです – CD001

答えて

0

をコメントしている)、それがあります組み込み関数なので、心配はありません。 http://php.net/manual/en/function.array-filter.php

<?php 
$q1=15; 
$q2=12; 
$q3=23; 
$q4=0; 
$q5=0; 

$count = array ($q1, $q2, $q3, $q4, $q5); 
echo count(array_filter($count)); 

あなたも

$count = array($q1, $q2, $q3, $q4, $q5); 
$final_arr = array_filter($count); 
echo "<pre>"; 
print_r($final_arr); 

はあなたがすべて0値を削除したにもこのコードを使用することができ、その後、最終的な配列の値をチェックし、このコードを使用したい場合は

echo count(array_filter($your_array)); 

$count = array($q1, $q2, $q3, $q4, $q5); 
function nonzero($var) 
{ 
return ($var > 0); 
} 

$arr = array_filter($count, "nonzero"); 
echo count($arr); 
0

あなたの配列はように、文字列「$ Q1を」、「$のQ2」、「$のQ3」を含んでおり、カウントしたい、または二重引用符( "")を使用することができます。

あなたは、このようにそれらを手動で数えることができます。

$count = 0; 
foreach($array as $el){ 
    if($el != 0){ 
     $count++; 
    } 
} 

または機能に組み込まれarray_filter()を使用しています。

0

配列に文字列を渡すので、配列を宣言するのは間違った方法です。変数を ''なしで追加する必要があります。あなたがゼロなしで数えたいなら、単純なforeachループを書くことができます。

$countWithoutZeros=0; 
foreach($count as $number){ if($number!=0){$countWithoutZeros++}} 
0

array_filter()はあなたの友人です。

$q1=15; 
$q2=12; 
$q3=23; 
$q4=0; 
$q5=0; 

$a = array ($q1, $q2, $q3, $q4, $q5); 

# Method 1 
$b = array_filter($a, function($v){return $v !== 0;}); 
var_dump($b); 
echo "<p>Count: ".count($b)."</p>"; 

# Method 2 
$b = array_filter($a); 
var_dump($b); 
echo "<p>Count: ".count($b)."</p>"; 
0

これを試してみてください:

$q1=15; 
$q2=12; 
$q3=23; 
$q4=0; 
$q5=0; 


$count = array ($q1, $q2, $q3, $q4, $q5); 
$count = array_filter($count); 
echo count($count); 
0

あなたは@axiacとしてフィルタ機能を使用してカウントすることができます(array_filter使用することができます

function nonzero($var){ 
    return ($var > 0); } 


$arr = array_filter($array, "nonzero"); 
echo count($arr); 

おかげ

0

のTyrこの:Dも

$c=0; 
$count = array ('$q1','$q2','$q3','$q4','$q5'); 
for(i=0;i<count($count);i++){ 
    if(!$count[$i]==0){ 
     $c++} 
    else{ continue; } 
    } 
echo $c; 

array_filter読ん()約

関連する問題