Was wäre die beste Methode, um ein Element eines assoziativen Arrays an den Anfang des Arrays zu verschieben?
Angenommen, ich habe das folgende Array:
$myArray = array(
'two' => 'Blah Blah Blah 2',
'three' => 'Blah Blah Blah 3',
'one' => 'Blah Blah Blah 1',
'four' => 'Blah Blah Blah 4',
'five' => 'Blah Blah Blah 5',
);
Was ich tun möchte, ist das 'one'-Element an den Anfang zu verschieben und am Ende das folgende Array zu erhalten:
$myArray = array(
'one' => 'Blah Blah Blah 1',
'two' => 'Blah Blah Blah 2',
'three' => 'Blah Blah Blah 3',
'four' => 'Blah Blah Blah 4',
'five' => 'Blah Blah Blah 5',
);
Wenn Sie numerische Array-Schlüssel haben und Array-Schlüssel neu indizieren möchten, ist es besser, sie
array_merge
wie folgt einzugeben :quelle
Ein bisschen spät, aber falls jemand es braucht, habe ich dieses kleine Snippet erstellt.
Passen Sie es einfach an Ihre Bedürfnisse an oder verwenden Sie es und deaktivieren Sie den Index, um sich zu bewegen. Funktioniert auch mit assoziativen Arrays.
quelle
Hier ist ein weiterer einfacher Einzeiler, mit dem dies erledigt wird
array_splice()
:quelle
Wenn Sie zwei Arrays haben, hat das erste Elemente, die an die Spitze des zweiten Arrays von Elementen verschoben werden können
Hier ist ein Codebeispiel:
quelle
In den Kommentaren des PHP-Handbuchs für array_unshift gibt es eine Funktion , mit der ein Element mit Schlüssel am Anfang eines Arrays hinzugefügt werden kann:
Deaktivieren Sie das Element und setzen Sie es mit der obigen Funktion erneut ein:
Ein allgemeinerer Ansatz könnte darin bestehen, uksort zu verwenden, um Ihr Array nach Schlüsseln zu sortieren und eine eigene Sortierfunktion bereitzustellen.
quelle
return = array_reverse($arr, true);