Rumah > pembangunan bahagian belakang > masalah PHP > Bagaimana untuk menggabungkan dua tatasusunan dalam php

Bagaimana untuk menggabungkan dua tatasusunan dalam php

zbt
Lepaskan: 2023-06-12 11:07:45
asal
2266 orang telah melayarinya

Cara menggabungkan dua tatasusunan dalam php+: 1. Gunakan operator "+" untuk menggabungkan terus dua tatasusunan menjadi satu tatasusunan 2. Gunakan fungsi "array_merge()" untuk menggabungkan satu atau lebih tatasusunan Bercantum ke dalam tatasusunan; 3. Gunakan fungsi "array_merge_recursive()" untuk menggabungkan satu atau lebih tatasusunan menjadi satu tatasusunan 4. Gunakan fungsi "array_combine()" untuk menggabungkan dua tatasusunan untuk mencipta tatasusunan baharu;

Bagaimana untuk menggabungkan dua tatasusunan dalam php

Persekitaran pengendalian tutorial ini: sistem Windows 10, versi php8.1.3, komputer DELL G3.

Saya percaya bahawa dalam pembangunan PHP harian anda, anda akan sering menghadapi senario di mana anda perlu menggabungkan tatasusunan. Jadi, apakah kaedah yang boleh digunakan untuk menggabungkan tatasusunan dalam php?

Pertama, gunakan operator "+"

Gunakan operator tambah "+" untuk menggabungkan terus dua tatasusunan menjadi satu tatasusunan.

Kod sampel:

<?php
$a = [1,2,3,&#39;a&#39;=>'a'];
$b = ['a'=>'aa','b'=>'bb',4,5,6,7,'c'=>'cc',8];
$c = $a + $b;
var_dump($a);
var_dump($b);
var_dump($c);
Salin selepas log masuk

Hasil keluaran:

// $a
array(4) {
  [0]=>
  int(1)
  [1]=>
  int(2)
  [2]=>
  int(3)
  ["a"]=>
  string(2) "a"
}

// $b
array(8) {
  ["a"]=>
  string(2) "aa"
  ["b"]=>
  string(2) "bb"
  [0]=>
  int(4)
  [1]=>
  int(5)
  [2]=>
  int(6)
  [3]=>
  int(7)
  ["c"]=>
  string(2) "cc"
  [4]=>
  int(8)
}

// $c
array(8) {
  [0]=>
  int(1)
  [1]=>
  int(2)
  [2]=>
  int(3)
  ["a"]=>
  string(2) "a"
  ["b"]=>
  string(2) "bb"
  [3]=>
  int(7)
  ["c"]=>
  string(2) "cc"
  [4]=>
  int(8)
}
Salin selepas log masuk

Nota: Gunakan operator tanda tambah "+" untuk menggabungkan tatasusunan apabila kekunci dua elemen tatasusunan adalah sama , Elemen sebelumnya akan menimpa elemen berikut.

Kedua, gunakan fungsi array_merge()

Penggunaan: array_merge(array1,array2,array3...)

array_merge() fungsi Digunakan untuk menggabungkan satu atau lebih tatasusunan menjadi satu tatasusunan.

Jika dua atau lebih elemen tatasusunan mempunyai nama kunci yang sama, elemen terakhir akan menimpa elemen lain.

Kod sampel:

<?php
$a = [1,2,3,&#39;a&#39;=>'a'];
$b = ['a'=>'aa','b'=>'bb',4,5,6,7,'c'=>'cc',8];
$c = array_merge($a,$b);
$d = [];
$e = array_merge($a,$d);
$f = array_merge($d,$b);
$g = array_merge([],[]);
var_dump($a);
var_dump($b);
var_dump($c);
var_dump($e);
var_dump($f);
var_dump($g);
Salin selepas log masuk

Hasil output:

// $a
array(4) {
  [0]=>
  int(1)
  [1]=>
  int(2)
  [2]=>
  int(3)
  ["a"]=>
  string(1) "a"
}
// $b
array(8) {
  ["a"]=>
  string(2) "aa"
  ["b"]=>
  string(2) "bb"
  [0]=>
  int(4)
  [1]=>
  int(5)
  [2]=>
  int(6)
  [3]=>
  int(7)
  ["c"]=>
  string(2) "cc"
  [4]=>
  int(8)
}
// $c
array(11) {
  [0]=>
  int(1)
  [1]=>
  int(2)
  [2]=>
  int(3)
  ["a"]=>
  string(2) "aa"
  ["b"]=>
  string(2) "bb"
  [3]=>
  int(4)
  [4]=>
  int(5)
  [5]=>
  int(6)
  [6]=>
  int(7)
  ["c"]=>
  string(2) "cc"
  [7]=>
  int(8)
}
// $e
array(4) {
  [0]=>
  int(1)
  [1]=>
  int(2)
  [2]=>
  int(3)
  ["a"]=>
  string(1) "a"
}
// $f
array(8) {
  ["a"]=>
  string(2) "aa"
  ["b"]=>
  string(2) "bb"
  [0]=>
  int(4)
  [1]=>
  int(5)
  [2]=>
  int(6)
  [3]=>
  int(7)
  ["c"]=>
  string(2) "cc"
  [4]=>
  int(8)
}
// $g
array(0) {
}
Salin selepas log masuk

Nota: Apabila kekunci elemen bagi dua tatasusunan adalah sama, elemen kemudian akan menimpa elemen sebelumnya. Tetapi jika indeks tatasusunan ialah indeks berangka atau indeks rentetan angka, indeks berangka tatasusunan yang digabungkan akan ditetapkan semula mengikut tertib, dan elemen indeks angka pertama tatasusunan pertama akan diisi dalam urutan bermula dari 0.

Kaedah ketiga ialah menggunakan fungsi array_merge_recursive()

Penggunaan: array_merge_recursive(array1,array2,array3...)

array_merge_recursive( ) fungsi Digunakan untuk menggabungkan satu atau lebih tatasusunan menjadi satu tatasusunan.

Kod sampel:

<?php
$a = [1,2,3,&#39;a&#39;=>'a'];
$b = ['a'=>'aa','b'=>'bb',4,5,6,7,'c'=>'cc',8];
$c = array_merge_recursive($a,$b);
var_dump($a);
var_dump($b);
var_dump($c);
Salin selepas log masuk

Hasil keluaran:

// $a
array(4) {
  [0]=>
  int(1)
  [1]=>
  int(2)
  [2]=>
  int(3)
  ["a"]=>
  string(1) "a"
}
// $b
array(8) {
  ["a"]=>
  string(2) "aa"
  ["b"]=>
  string(2) "bb"
  [0]=>
  int(4)
  [1]=>
  int(5)
  [2]=>
  int(6)
  [3]=>
  int(7)
  ["c"]=>
  string(2) "cc"
  [4]=>
  int(8)
}
// $c
array(11) {
  [0]=>
  int(1)
  [1]=>
  int(2)
  [2]=>
  int(3)
  ["a"]=>
  array(2) {
    [0]=>
    string(1) "a"
    [1]=>
    string(2) "aa"
  }
  ["b"]=>
  string(2) "bb"
  [3]=>
  int(4)
  [4]=>
  int(5)
  [5]=>
  int(6)
  [6]=>
  int(7)
  ["c"]=>
  string(2) "cc"
  [7]=>
  int(8)
}
Salin selepas log masuk

Nota: Jika dua atau lebih elemen tatasusunan mempunyai kunci yang sama, array_merge_recursive() tidak akan melakukan penguncian Nama ganti, sebaliknya , berbilang nama kunci yang sama dibentuk secara rekursif menjadi tatasusunan. Jika indeks tatasusunan ialah indeks berangka atau indeks rentetan angka, indeks berangka tatasusunan yang digabungkan akan ditetapkan semula mengikut tertib, bermula dari elemen indeks angka pertama tatasusunan pertama dan mengisinya dalam urutan bermula dari 0.

Kaedah keempat ialah menggunakan fungsi array_combine()

Penggunaan: array_combine(keys, values)

array_combine() fungsi, dengan menggabungkan dua tatasusunan untuk mencipta tatasusunan baharu di mana satu elemen tatasusunan ialah nama kunci dan elemen tatasusunan yang lain ialah nilai kunci.

Kod sampel:

<?php
$a = [1,2,3];
$b = [&#39;a&#39;,&#39;b&#39;,&#39;c&#39;];
$c = array_combine($a,$b);
$d = array_combine($b,$a);
var_dump($c);
var_dump($d);
Salin selepas log masuk

Hasil output:

// $c
array(3) {
  [1]=>
  string(1) "a"
  [2]=>
  string(1) "b"
  [3]=>
  string(1) "c"
}
// $d
array(3) {
  ["a"]=>
  int(1)
  ["b"]=>
  int(2)
  ["c"]=>
  int(3)
}
Salin selepas log masuk

Nota: Bilangan elemen dalam tatasusunan nama kunci dan tatasusunan nilai kunci mestilah sama!

Atas ialah kandungan terperinci Bagaimana untuk menggabungkan dua tatasusunan dalam php. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan