2016-06-10 62 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);