2015-08-22 53 views
0

因此,我在它旁邊有補丁編號和季節數組,我試圖計算一個季節中有多少個補丁,所以我要計算多少個$ season [x] [1 ] == 1或2等在二維數組中使用array_count_values

$patches_get = $conn->prepare("SELECT Patch_No FROM info ORDER BY Created DESC"); 
$patches_get->execute(); 
$patchesresult = $patches_get->get_result(); 
    while($data1 = $patchesresult->fetch_assoc()){ 
     $patches[]=$data1["Patch_No"]; 
    } 
function getseasons($patches){ 
    $seasons = array(); 
    foreach($patches as $patch){ 
     if(substr($patch,0,1)!=1){ 
      $seasons[] = array($patch, substr($patch,0,1)); 
     } 
     //Checking first number if 1 it is season 1 or 2 or 3 
     elseif(substr($patch,0,1)==1){ 
      if(substr($patch, 6,3)>151&&substr($patch, 6,3)<155){ 
       $seasons[] = array($patch, 3); 
      } 
      elseif(substr($patch, 6,3)>125&&substr($patch, 6,3)<151){ 
       $seasons[] = array($patch, 2); 
      } 
      elseif(substr($patch, 6,3)>32&&substr($patch, 6,3)<126){ 
       $seasons[] = array($patch, 1); 
      } 
     } 

    } 
    return $seasons; 
} 
$seasons = getseasons($patches); 
var_dump($seasons); 
$fr_c=array_count_values($seasons); 
echo $fr_c['1']; 

這裏也是我的陣列會是什麼樣子http://i.imgur.com/lV1APvV.png

回答

0

如果我「米讀你的問題的權利,你基本上要算內陣列沒有的var_dump如果是這樣的話,看看array_column()

例如,假設我有以下的陣列

$myArr = [ 
    ['item' => 'value1'], 
    ['item' => 'value2'] 
] 

調用數組列像這樣

array_column($myArr, 'item'); // returns an array of just the values that you can iterate through. 

here

如果這不是你要找的答案,請漠視。