Bagaimana untuk menyambung tatasusunan php tanpa pendua

WBOY
Lepaskan: 2023-05-19 20:40:36
asal
779 orang telah melayarinya

PHP ialah bahasa pengaturcaraan yang sangat popular Ia mempunyai fungsi tatasusunan yang berkuasa yang boleh melaksanakan pelbagai operasi pada tatasusunan. Dalam PHP, penggabungan tatasusunan adalah operasi yang sangat biasa. Walau bagaimanapun, apabila kita perlu menggabungkan dua tatasusunan, elemen pendua mungkin akan muncul. Jadi, apa yang perlu dilakukan? Artikel ini akan memperkenalkan cara menggunakan fungsi tatasusunan PHP untuk menyambung tatasusunan dan mengelakkan unsur pendua.

1. Gunakan fungsi array_merge() untuk menyambung tatasusunan

PHP menyediakan fungsi array_merge(), yang boleh digunakan untuk menggabungkan dua atau lebih tatasusunan ke dalam tatasusunan baru. Sintaksnya adalah seperti berikut:

array array_merge ( array $array1 [, array $... ] )
Salin selepas log masuk

Fungsi ini boleh menerima dua atau lebih tatasusunan sebagai parameter, ia akan menggabungkan semua elemen dalam tatasusunan ini ke dalam tatasusunan baharu dan mengembalikan tatasusunan baharu ini. Berikut ialah demonstrasi mudah:

$array1 = array('a', 'b', 'c');
$array2 = array('d', 'e', 'f');
$result = array_merge($array1, $array2);
print_r($result);
Salin selepas log masuk

Hasil keluaran adalah seperti berikut:

Array (
    [0] => a
    [1] => b
    [2] => c
    [3] => d
    [4] => e
    [5] => f
)
Salin selepas log masuk
Salin selepas log masuk

Begitu juga, kita boleh menggabungkan tiga tatasusunan menjadi tatasusunan baharu:

$array1 = array('a', 'b', 'c');
$array2 = array('d', 'e', 'f');
$array3 = array('g', 'h', 'i');
$result = array_merge($array1, $array2, $array3);
print_r($result);
Salin selepas log masuk

Keluaran keputusan Seperti berikut:

Array (
    [0] => a
    [1] => b
    [2] => c
    [3] => d
    [4] => e
    [5] => f
    [6] => g
    [7] => h
    [8] => i
)
Salin selepas log masuk

Seperti yang anda lihat daripada output, fungsi array_merge() boleh menggabungkan berbilang tatasusunan menjadi satu tatasusunan. Walau bagaimanapun, jika dua atau lebih tatasusunan mempunyai elemen yang sama, elemen tersebut akan diulang dalam tatasusunan baharu.

2 Gunakan fungsi array_unique() untuk mengalih keluar elemen pendua

PHP menyediakan fungsi array_unique() yang sangat mudah, yang boleh digunakan untuk mengalih keluar elemen pendua dalam tatasusunan dan mengembalikan yang baharu array , hanya kejadian pertama elemen dikekalkan. Sintaksnya adalah seperti berikut:

array array_unique ( array $array [, int $sort_flags = SORT_STRING ] );
Salin selepas log masuk

Fungsi ini menerima tatasusunan sebagai parameter dan mengembalikan tatasusunan baharu yang tidak mengandungi unsur pendua. Secara lalai, fungsi ini mengalih keluar elemen pendua dan mengekalkan elemen pertama yang berlaku. Berikut ialah demonstrasi mudah:

$array = array('a', 'b', 'c', 'a', 'b', 'c');
$result = array_unique($array);
print_r($result);
Salin selepas log masuk

Output adalah seperti berikut:

Array (
    [0] => a
    [1] => b
    [2] => c
)
Salin selepas log masuk

Seperti yang anda lihat daripada output, fungsi array_unique() boleh mengalih keluar elemen pendua daripada tatasusunan dan mengembalikan a tatasusunan baharu. Tatasusunan baharu ini hanya mengekalkan kejadian pertama elemen.

3. Gunakan fungsi array_merge() dan array_unique() untuk menyambung tatasusunan

Menyambung dua tatasusunan kepada tatasusunan baharu ialah operasi yang sangat biasa. Walau bagaimanapun, jika terdapat elemen yang sama dalam kedua-dua tatasusunan, elemen tersebut akan diulang dalam tatasusunan baharu. Untuk mengelakkan situasi ini, mula-mula kita boleh menggunakan fungsi array_merge() untuk menyertai dua tatasusunan, dan kemudian gunakan fungsi array_unique() untuk mengalih keluar elemen pendua. Berikut ialah demonstrasi mudah:

$array1 = array('a', 'b', 'c');
$array2 = array('c', 'd', 'e');
$result = array_unique(array_merge($array1, $array2));
print_r($result);
Salin selepas log masuk

Hasil output adalah seperti berikut:

Array (
    [0] => a
    [1] => b
    [2] => c
    [4] => d
    [5] => e
)
Salin selepas log masuk

Seperti yang anda boleh lihat daripada hasil output, kami mula-mula menggunakan fungsi array_merge() untuk menyambung $array1 dan tatasusunan $array2 ke dalam tatasusunan baharu, dan kemudian gunakan fungsi array_unique() untuk mengalih keluar elemen pendua, dan akhirnya mendapatkan tatasusunan bukan pendua baharu.

4. Gunakan fungsi array_push() untuk menyambung tatasusunan

PHP juga menyediakan fungsi array_push(), yang boleh digunakan untuk menolak satu atau lebih elemen ke hujung tatasusunan. Sintaks fungsi ini adalah seperti berikut:

int array_push ( array &$array , mixed $values [, mixed $... ] );
Salin selepas log masuk

Fungsi ini menerima tatasusunan sebagai parameter dan menolak satu atau lebih elemen ke penghujung tatasusunan, mengembalikan panjang tatasusunan baharu. Berikut ialah demonstrasi mudah:

$array1 = array('a', 'b', 'c');
$array2 = array('d', 'e', 'f');
foreach($array2 as $value) {
    if(!in_array($value, $array1)) {
        array_push($array1, $value);
       }
}
print_r($array1);
Salin selepas log masuk

Hasil keluaran adalah seperti berikut:

Array (
    [0] => a
    [1] => b
    [2] => c
    [3] => d
    [4] => e
    [5] => f
)
Salin selepas log masuk
Salin selepas log masuk

Seperti yang anda boleh lihat daripada hasil keluaran, kami mula-mula membandingkan unsur-unsur tatasusunan $array1 dan unsur-unsur daripada tatasusunan $array2 satu demi satu Jika Elemen ini tidak wujud dalam tatasusunan $array1, jadi kami menggunakan fungsi array_push() untuk menolak elemen ini ke penghujung tatasusunan, dan akhirnya mendapatkan tatasusunan bukan pendua yang baharu.

Ringkasan:

Melalui pengenalan di atas, kita dapat melihat bahawa kaedah penyambungan tatasusunan tanpa duplikasi dalam PHP adalah sangat mudah. Kita boleh menggunakan fungsi tatasusunan array_merge() dan array_unique() yang disediakan oleh PHP untuk beroperasi, atau kita boleh menggunakan fungsi array_push() untuk beroperasi. Walau bagaimanapun, perlu diingatkan bahawa apabila menggunakan fungsi ini, kita perlu mempertimbangkan sepenuhnya bahawa nilai nol atau nilai Boolean mungkin wujud dalam tatasusunan. Kerana nilai-nilai ini mencipta beberapa masalah apabila membandingkannya. Oleh itu, apabila menggunakan fungsi ini, adalah lebih baik untuk menilai dan menapis terlebih dahulu untuk memastikan ketepatan dan kebolehpercayaan program.

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

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
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!