2017-07-19 24 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"); 

これは、それが "2018" と呼ばれているの$ yearshowever以内に新しい配列を追加しないと "2016" の値は、その2018配列内の場所です。私はすでに手動で2017配列を作成しているので、何らかの理由でその数だけインクリメントしていると仮定します。

+3

'$ years [2016] = ['value 1'、 'value 2'、 'value 3'];' –

+0

これに 'array_push'を使う必要はなく、' $年["2016"] = $配列; ' –

+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); 
?> 

または:あなたはそれを行うための多くの方法は、例えば、あるarray_push を使用する必要がいけない。この場合、

$years['someKey'] = [value1, value2 ....] 
0

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

結果は次のようになりますように:

$years = array(
"2017" => array("Value01", "Value02"), 
"whatever the key" => array("whatever the value")); 
関連する問題