2017-07-19 176 views
1

我需要添加一个数组内使用array_push或类似的东西。PHP array_push一个阵列到另一个

我想实现看起来就像这样:

$years = array(
    "2017" => array("Value01", "Value02"), 
    "2016" => array("Value03") 
); 

什么是建立在另一个数组的最佳方式?我曾尝试以下:

array_push($years, "2016" => array()); 

这只是给出了一个

500错误。

和:

array_push($years, "2016"); 

这确实增加了$ yearshowever内一个新的数组它被称为 “2018” 和 “2016” 的值是2018数组内的地方。我已经手动创建了2017年的数组,所以我认为它只是出于某种原因在该数字上增加。

+3

您可以通过键设置嵌套数组:'$ years [2016] = ['value 1','value 2','value 3'];' –

+0

不需要'array_push',只需写'$年[“2016”] = $ array;' –

+1

阅读[PHP数组](http://php.net/manual/en/language.types.array.php)。您的问题的答案在[“使用方括号语法访问数组元素”一节](http://php.net/manual/en/language.types.array.php#language.types.array.syntax.accessing )。 – axiac

回答

2

正确的方式做array_push(): -

array_push($years, array("2016" => array())); 

但你想要的东西,对于那些: -

$years["2016"]= array(); 

输出: - https://eval.in/834452

0

没有推:

<?php 

$years = []; 

$years[][] = 'value1'; 
$years[][] = 'value2'; 

var_dump($years); 
?> 

或者:

$years['someKey'] = [value1, value2 ....] 
0
在这种情况下,你不需要使用array_push 有这样做的方法很多,比如

$years["whatever the key"]= array("whatever the value"); 

结果将是这样的:

$years = array(
"2017" => array("Value01", "Value02"), 
"whatever the key" => array("whatever the value"));