2017-01-03 49 views
0

因此,可以说我在我的PHP脚本这一行:
array_push($arr,array($a,$b,$c));
可以说,有时我有一个$b1变量来把这个阵列 中,我想不会有重复的缘故维护我怎样才能避免这样做: ```PHP避免将值

if(!isset($b1)){ 
    array_push($arr,array($a,$b,$c,$d)); 
} 
else{ 
    array_push($arr,array($a,$b,$b1,$c,$d)); 
} 

```

+0

是否要扩展'$ arr',或者在其中放置另一个数组,以及'$ b1'的确切位置来自哪里。你必须更具体一点,并且描述如何重现你的例子。 –

+0

'$ b1''只是可选的,''$ arr''是一个数组数组,我将''arr''传递给javasciprt,稍后它会用来生成一个表;在这种情况下'$ b1''是一个可选的列 –

回答

0

这是我与
我希望想出了解决方案对于某种我不知道的语法技巧。
我相信这与Marko Mackic的解决方案相同,但不使用@来抑制错误,但是如果实际需要在数组中有空值,这不是一个解决方案。

function skipNull($in){ 
    $out=array(); 
    foreach($in as $val){ 
     if($val!==null){ 
      array_push($out,$val); 
     } 
    } 
    return $out; 
} 
//skip part where variable are defined 
array_push($arr,skipNull(array(
    $a,$b, 
    isset($b1)?$b1:null, 
    $c,$d 
))); 
+0

嗯''''可以简写为'isset' :)这是同样的解决方案,我的解决方案不会抑制错误,因为如果一个变量没有定义,你会得到通知 –