2017-07-19 4 views
1

Ich muss ein Array innerhalb eines anderen mit array_push oder etwas ähnliches hinzufügen.PHP array_push ein Array in ein anderes

Was würde Ich mag, wie dies aussehen zu erreichen:

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

Was ist der beste Weg wäre, ein Array innerhalb eines anderen zu schaffen? Ich habe folgendes versucht:

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

Dies gibt nur einen

500 Fehler.

Und:

array_push($years, "2016"); 

Dies fügt ein neues Array innerhalb von $ yearshowever es heißt "2018" und "2016" Wert ist Platz innerhalb dieses 2018-Array. Ich habe das Array 2017 bereits manuell erstellt, daher nehme ich an, dass es aus irgendeinem Grund nur auf diese Zahl erhöht wird.

+3

Sie können das verschachtelte Array mit dem folgenden Schlüssel einstellen: '$ years [2016] = ['value 1', 'value 2', 'value 3'];' –

+0

Sie müssen dafür 'array_push' nicht verwenden, schreiben Sie einfach $ Jahre ["2016"] = $ Array; ' –

+1

Lesen Sie über [PHP-Arrays] (http://php.net/manual/en/language.types.array.php). Die Antwort auf Ihre Frage finden Sie im Abschnitt ["Auf Array-Elemente mit eckiger Klammer-Syntax zugreifen"] (http://php.net/manual/en/language.types.array.php#language.types.array.syntax.accessing). – axiac

Antwort

2

korrekte Art und Weise mit array_push() zu tun: -

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

Aber was Sie wollen, für das tun: -

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

Ausgang: - https://eval.in/834452

0

Ohne Push:

<?php 

$years = []; 

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

var_dump($years); 
?> 

Oder:

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

in diesem Fall brauchen Sie nicht array_push gibt es viele Möglichkeiten, es zu tun zu verwenden, zum Beispiel:

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

das Ergebnis wird sein, wie:

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