2015-03-25 102 views
0

我想在这里解析。这里是删除阵列中的元素PHP

Array ([61] => [128] => [158] => [224] => [281] => AGAS, [282] => JAMES [283] => JAY [285] => [329] => [330] => 03/02/2015 [331] => 6:46 [332] => am [333] => 5:42 [334] => pm [433] => APOLLOL, [434] => KARMIN [436] => [480] => [481] => 03/01/2015 [598] =>) 

,我可以看到有我的阵列空值,我已经试过这个代码我的数组的内容:

$final2=array_filter($final); 
$trimmed_array=array_map('trim',$final2); 

但一些空值都没有删除,也我怎样才能使我的阵列像这样:

Array ([1] => AGAS, [2] => JAMES [3] => JAY [4] => [5] => 03/02/2015 [6] => 6:46 [7] => am [8] => 5:42 [9] => pm [10] => APOLLOL, [11] => KARMIN [12] => 03/01/2015) 
+0

@ hek2mgl感谢您的编辑 – user3797088 2015-03-25 03:33:18

+0

您可以安装'xdebug'扩展名并重新生成var_dumps吗?它将显示数据类型并在字符串周围放置'“”。 – hek2mgl 2015-03-25 03:41:14

回答

0

请看看下面给出的函数。希望这会帮助你。该函数将所有空值转换为空白(“”)。

function array_remove_empty($Yourarray) { 
     foreach ($Yourarray as $key => $value) { 
      if (is_array($value)) { 
       $Yourarray[$key] = array_remove_empty($Yourarray[$key]); 
      } 

      if (empty($Yourarray[$key])) { 
       $Yourarray[$key] = ""; 
      } 
     } 

     return $Yourarray; 
    } 
0

$inputArray = array (
'61'=> '', 
'128' => '', 
'158' => '', 
'224' => '', 
'281' => 'AGAS', 
'282' => 'JAMES' , 
'283' => 'JAY' , 
'285' =>'', 
'329' => '', 
'330' => '03/02/2015', 
'331' => '6:46' , 
'332' => 'am' , 
'333' => '5:42', 
'334' =>'pm' , 
'433' => 'APOLLOL', 
'434' =>'KARMIN' , 
'436' =>'' , 
'480' => '', 
'481' => '03/01/2015' , 
'598' => '', 
); 

$reqResult = array (
'1' => 'AGAS', 
'2' => 'JAMES', 
'3' => 'JAY', 
'4' =>'', 
'5' => '03/02/2015', 
'6' => '6:46', 
'7' => 'am' , 
'8' => '5:42' , 
'9' => 'pm' , 
'10' => 'APOLLOL', 
'11'=> 'KARMIN' , 
'12' => '03/01/2015', 
); 

在reqResult林假设偏移4是一个错误。

$myResult = array(); 
$i=1; 
foreach($inputArray as $key => $value){ 
if($value!=''){ 
    $myResult[$i]= $value; 
    $i++; 
    } 
} 
print_r($myResult);