我需要创建一个数组的数组。结果 我一直在使用array_map(null,$a,$b,$c)做到这一点,它工作得很好,但是,如果映射的阵列中的一个不存在,这是行不通的。

要解决这个问题,我已经使用:

$myArray= array();
if (isset($a)) {
    array_push($myArray,$a);
}
if (isset($b)) {
    array_push($myArray,$b);
}
if (isset($c)) {
    array_push($myArray,$c);
}

有没有写这个?点击更优雅/短方法 我已经尝试通过array_map($function,$a,$b,$c)但没有运气施加某些功能。

有帮助吗?

解决方案

$myArray = array_filter(array($a, $b, $c));

其他提示

您可以使用以下功能:

function joinArrays(){
  $arrays = func_get_args();
  $output = array();
  foreach($arrays as $array){
     if(!empty($array)) array_push($output, $array);
  }
  return $output;
}

调用诸如:joinArrays($一个,$ B,$ C,等等。);

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top