2016-06-10 111 views
0

$ firstbloodkill陣列:使空數組值設置爲0

Array ([0] => [1] => [2] => [3] => [4] => [5] => 1 [6] => [7] => [8] => [9] =>) 

我想空值設置爲0。

什麼我嘗試做:

Array ([0] => 0 [1] => 0 [2] => 0 [3] => 0 [4] => 0 [5] => 1 [6] => 0 [7] => 0 [8] => 0 [9] => 0) 

我代碼:

foreach ($firstbloodkill as $key => $element) 
    { 
     if($element == "") 
     { 
      $firstbloodkill[$key] = 0; 
     } 

    } 

它不工作。我做錯了什麼?

編輯:我發現我做錯了什麼。陣列名稱是'firstBloodKill'。我將firstbloodkill改爲firstBloodKill並開始工作。對不起,我很笨。

+0

檢查你有什麼是價值:'的var_dump($元素) ;' – nospor

回答

1
foreach($firstbloodkill as $key => $element) { 
    if(empty($element)) { 
     $firstbloodkill[$key] = 0; 
    } 
} 
+0

非常感謝你的工作,並將它標記爲正確的答案。我的代碼也在工作。 Im啞數組名稱是firstBloodKill,我輸入firstbloodkill。這就是爲什麼它不工作。 – Heptagon

1

您可以簡單地使用empty功能等作爲

foreach($arr as &$v){ 
    if(empty($v)){ 
     $v = 0; 
    } 
} 
1

嗨,您還可以使用array_map這個

<?php 
function change($value){ 
    if(empty($value))return 0; 
    else return $value; 
} 
$firstbloodkill = array(0 =>'',1 =>'' ,2 =>1,3 =>'' ,4 =>'' ,5 =>1 ,6 =>'' ,7 =>'' ,8 =>'' ,9=>''); 
$new = array_map('change',$firstbloodkill); 
echo "<pre>";print_r($new);