Ich habe jetzt die oben genannten Array-Daten und möchte sie in die folgenden ändern. Kann ich sie ändern?
Die Hauptsache ist, die gleichen Stellen in den beiden Arrays zusammenzuführen und dann ein neues Array zu öffnen, um die verschiedenen Stellen zu speichern
Ich habe jetzt die oben genannten Array-Daten und möchte sie in die folgenden ändern. Kann ich sie ändern?
Die Hauptsache ist, die gleichen Stellen in den beiden Arrays zusammenzuführen und dann ein neues Array zu öffnen, um die verschiedenen Stellen zu speichern
Sie möchten wahrscheinlich, dass einige bestimmte Felder wiederholt zur Verwendung entfernt werden, anstatt sie zu wiederholen, können Sie die folgende Anweisung ausprobieren
<code> $simiArray = []; foreach($resourceArray as $rVal) { $order_sn = $rVal['order_sn']; $simiArray[$rVal['order_sn']]['order_sn'] = $rVal['order_sn']; $simiArray[$order_sn]['order_add_time'] = $rVal['order_add_time']; $simiArray[$rVal['order_sn']]['pay_amonut'] = $rVal['pay_amonut']; unset($rVal['order_sn']); unset($rVal['order_add_time']); unset($rVal['pay_amonut']); $simiArray[$order_sn]['order_detail'][] = $rVal; } </code>
Es kann implementiert werden, aber in der Standardbibliothek sollte es keine Funktion mit dieser Funktion geben, sodass Sie sie selbst schreiben müssen.
Es ist jetzt nicht bequem, Code zu schreiben, also möchte ich Ihnen zunächst eine Idee geben:
Wenn zwei Arrays eingegeben werden, durchlaufen Sie das erste Array. Wenn die aktuellen Schlüsselwerte der beiden Arrays gleich sind, verschieben Sie den Wert in ein neues Array und löschen Sie den Schlüssel aus den beiden Eingabearrays. Machen Sie sich keine Sorgen, wenn die Werte in den beiden Arrays unterschiedlich sind.
Nach dieser Verarbeitung können wir ein Array erhalten, das die gleichen Schlüssel-Wert-Paare zwischen den beiden Arrays speichert, und zwei Arrays, die nur unterschiedliche Inhalte speichern (da dieselben oben gelöscht wurden), und schließlich einfach die letzten beiden verschieben Arrays in das erste Array.
PS: Das Löschen von Elementen aus einem Array kann zu Leistungsproblemen führen. Sie können sie in zwei separaten Arrays speichern