2017-09-13 60 views
0

我试图数组元素推到数组的数组,空数组存在的时候我array_push PHP

 $datas = array() 
     $data = array(
     'module' => 'abc', 
    ); 

     array_push($datas,$data); 

当我尝试使用的print_r

 print_r($datas); 

打印$ DATAS,其结果是: 阵列

(
    [0] => Array 
     (
     ) 

    [1] => Array 
     (
      [module] => 
      [key] => po_reminder 
     ) 
)  

它总是具有元素[0]的开始,是正常的,我可以没有元件0,因为原始数组应该是空的。

+3

你的代码工作正常(除了丢失;):https://3v4l.org/sidq0 – Calimero

+1

您的print_r o/p与预期不符,您从哪里得到'key' –

+0

您的问题是什么?我无法理解。你的代码工作正常:-https://eval.in/860450 –

回答

0

试试下面代码合并两个数组

$merge = array_merge($datas, $data); 
print_r($merge); 
0

您的代码看起来你只是想要做array_merge()

您的代码是正确的。如果你把$阵列1至$像数组2的array_push($array2,$array1)结果将看起来像这样:

$array2 [ 
    $array1[] 
] 

$ arary1将在$放入数组2 [0],只要它的第一个元素/ e.g。推到一个空数组

0

可以使用array_merge代替

,或者你可以array_push后使用array_filter

$datas = array() 
$data = array(
    'module' => 'abc', 
); 

array_push($datas,$data); 

$datas = array_filter($datas); 
+0

它的工作原理,但然后开始数组索引将是1 –

+0

$ datas = array(); –

+0

谢谢Barclick。有用 –