Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bagaimana untuk mencari kesatuan tatasusunan dalam php

Bagaimana untuk mencari kesatuan tatasusunan dalam php

PHPz
PHPzasal
2023-04-18 10:20:13784semak imbas

Array ialah struktur data yang sangat berguna dalam PHP Ia boleh menyimpan set data Kita boleh mengakses elemen dalam tatasusunan melalui indeks atau kunci dalam tatasusunan. Dalam proses pembangunan sebenar, kita selalunya perlu melakukan operasi penggabungan tatasusunan untuk menggabungkan elemen dalam pelbagai tatasusunan untuk membentuk tatasusunan baharu. Dalam artikel ini, kita akan mempelajari cara menggunakan fungsi tatasusunan dalam PHP untuk melaksanakan operasi penggabungan tatasusunan dan mendapatkan koleksi berbilang tatasusunan.

1. Tatasusunan dalam PHP

Dalam PHP, tatasusunan ialah struktur data yang sangat biasa digunakan untuk menyimpan satu set data daripada jenis yang sama mempunyai nilai indeks atau nilai kunci, dan kita boleh mengakses elemen dalam tatasusunan melalui nilai ini.

Berikut ialah dua cara untuk mentakrif tatasusunan dalam PHP:

1 Gunakan fungsi tatasusunan() untuk mencipta tatasusunan

$arr = tatasusunan('a',. 'b ', 'c');

2 Gunakan simbol [] untuk mencipta tatasusunan

$arr = ['a', 'b', 'c'];

Dalam PHP, tatasusunan boleh menyimpan sebarang jenis data, seperti rentetan, integer, nombor titik terapung, nilai Boolean, objek, dsb. Selain itu, PHP juga menyediakan banyak fungsi berguna untuk mengendalikan tatasusunan, seperti yang ditunjukkan di bawah.

2. Fungsi penggabungan tatasusunan dalam PHP

PHP menyediakan beberapa fungsi yang sangat berguna untuk memproses tatasusunan dalam pelbagai tatasusunan ialah operasi yang sangat biasa. Berikut ialah pengenalan kepada fungsi yang digunakan untuk operasi penggabungan tatasusunan dalam PHP:

fungsi 1.array_merge()

fungsi array_merge() ialah fungsi yang paling biasa dalam PHP yang menggabungkan tatasusunan itu menggabungkan dua Satu atau lebih tatasusunan digabungkan menjadi satu tatasusunan. Berikut ialah penggunaan fungsi array_merge():

$arr1 = array('a', 'b', 'c');
$arr2 = array('d', 'e' , ' f');
$result = array_merge($arr1, $arr2);

Kod di atas akan menggabungkan dua tatasusunan $arr1 dan $arr2 bersama-sama dan menyimpan hasilnya dalam $result dalam tatasusunan.

Perlu diambil perhatian bahawa fungsi array_merge() hanya boleh mengendalikan tatasusunan indeks, bukan tatasusunan bersekutu. Jika anda perlu memproses tatasusunan bersekutu, anda perlu menggunakan fungsi array_merge_recursive().

Fungsi 2.array_merge_recursive()

Fungsi array_merge_recursive() adalah serupa dengan fungsi array_merge() dan juga boleh digunakan untuk menggabungkan dua atau lebih tatasusunan. Perbezaannya ialah ia boleh menggabungkan tatasusunan bersekutu.

$arr1 = tatasusunan('a' => 'epal', 'b' => 'bola');
$arr2 = tatasusunan('c' => 'kucing', 'd' => 'dog');
$result = array_merge_recursive($arr1, $arr2);

Kod di atas akan menggabungkan dua tatasusunan bersekutu $arr1 dan $arr2 bersama-sama, dan menyimpan keputusan dalam tatasusunan $result.

Perlu diambil perhatian bahawa fungsi array_merge_recursive() akan menggabungkan tatasusunan secara rekursif, dan operasi cantum boleh dilakukan dengan betul walaupun tatasusunan lain bersarang dalam tatasusunan.

fungsi 3.array_combine()

array_combine() fungsi boleh menggabungkan dua tatasusunan menjadi tatasusunan bersekutu, di mana nilai dalam tatasusunan pertama berfungsi sebagai nilai utama tatasusunan bersekutu, dan kedua Nilai dalam tatasusunan digunakan sebagai nilai elemen tatasusunan bersekutu. Berikut ialah penggunaan fungsi array_combine():

$keyArr = array('a', 'b', 'c');
$valArr = array('apple', 'ball' , ' cat');
$result = array_combine($keyArr, $valArr);

Kod di atas akan menghasilkan tatasusunan bersekutu dengan nama kunci $a, $b dan $c, dan sepadan Nilainya ialah $epal, $bola dan $cat.

Fungsi 4.array_replace()

Fungsi array_replace() boleh digunakan untuk menggabungkan tatasusunan mengikut nama kunci. Ia menggabungkan elemen dua atau lebih tatasusunan ke dalam satu tatasusunan dan menggantikan nilai kunci dengan nama yang sama Jika kunci hanya muncul dalam salah satu tatasusunan, nilai kunci tidak akan diganti. Berikut ialah penggunaan fungsi array_replace():

$arr1 = array('a' => 'apple', 'b' => 'ball');
$arr2 = array (' b' => 'bat', 'c' => 'cat');
$result = array_replace($arr1, $arr2);

Kod di atas akan mengaitkan kedua-duanya Tatasusunan $arr1 dan $arr2 digabungkan dan elemen dengan nilai kunci $b digantikan dengan $bat.

5. Fungsi array_intersect()

Fungsi array_intersect() boleh digunakan untuk mendapatkan persilangan berbilang tatasusunan, iaitu, hanya mengekalkan elemen yang muncul dalam berbilang tatasusunan pada masa yang sama. Berikut ialah penggunaan fungsi array_intersect():

$arr1 = array('a', 'b', 'c');
$arr2 = array('b', 'c' , ' d');
$arr3 = array('c', 'd', 'e');
$result = array_intersect($arr1, $arr2, $arr3);

Di atas Kod akan mendapat persilangan tiga tatasusunan, iaitu elemen $c.

fungsi 6.array_diff()

array_diff() fungsi digunakan untuk mendapatkan set perbezaan berbilang tatasusunan, iaitu ia hanya muncul dalam tatasusunan pertama dan tidak muncul dalam tatasusunan lain elemen. Berikut ialah penggunaan fungsi array_diff():

$arr1 = array('a', 'b', 'c');
$arr2 = array('b', 'c' , ' d');
$arr3 = array('c', 'd', 'e');
$result = array_diff($arr1, $arr2, $arr3);

Kod di atas akan mendapat elemen yang hanya muncul dalam $arr1, iaitu elemen $a.

3. Contoh Koleksi Tatasusunan PHP

Dengan pengetahuan di atas, kami boleh melaksanakan kod PHP yang bertujuan untuk menggabungkan berbilang tatasusunan. Berikut ialah pelaksanaan kod:

function array_union(...$arrays) {

$res = array();
foreach($arrays as $arr) {
    $res = array_merge_recursive($res, $arr);
}
return $res;

}

Kod di atas menggunakan parameter pembolehubah (... ) untuk mewakili pelbagai tatasusunan. Dalam fungsi tersebut, kami menggunakan gelung foreach untuk melintasi semua tatasusunan parameter masuk, menggabungkannya menggunakan fungsi array_merge_recursive() dan akhirnya mengembalikan tatasusunan hasil gabungan.

Dengan fungsi ini, kita boleh memanggilnya untuk menyelesaikan set berbilang tatasusunan, seperti berikut:

$arr1 = array('a' => 'apple', ' b' = > 'bola');
$arr2 = array('b' => 'kelawar', 'c' => 'kucing', 'd' => 'anjing');
$ arr3 = tatasusunan('c' => 'kucing', 'd' => 'rusa', 'e' => 'gajah');
$hasil = array_union($arr1, $ arr2, $ arr3);

Kod di atas akan menggabungkan tiga tatasusunan bersekutu dan mengembalikan tatasusunan bersekutu yang mengandungi semua elemen.

Ringkasan

Array ialah struktur data yang sangat penting dalam PHP Kita selalunya perlu menggabungkan berbilang tatasusunan untuk mendapatkan koleksi. Artikel ini memperkenalkan beberapa fungsi tatasusunan berguna dalam PHP, termasuk array_merge(), array_merge_recursive(), array_combine(), array_replace(), array_intersect(), dan array_diff(). Kami juga melaksanakan fungsi untuk mencari penyatuan berbilang tatasusunan. Pembaca boleh memilih fungsi yang sesuai dengan mereka untuk melaksanakan operasi tatasusunan mengikut keperluan mereka sendiri.

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

Kenyataan:
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