Rumah > pembangunan bahagian belakang > tutorial php > Bagaimana untuk Menggabungkan Tatasusunan Objek dan Mengeluarkan Pendua dalam PHP?

Bagaimana untuk Menggabungkan Tatasusunan Objek dan Mengeluarkan Pendua dalam PHP?

DDD
Lepaskan: 2024-11-13 11:57:02
asal
764 orang telah melayarinya

How to Merge Object Arrays and Remove Duplicates in PHP?

Menggabungkan Tatasusunan Objek dan Menghapuskan Nilai Pendua

Apabila bekerja dengan tatasusunan objek, mungkin perlu untuk menggabungkan berbilang tatasusunan menjadi satu sambil memastikan penghapusan pendua nilai. Untuk mencapai matlamat ini, kita boleh memanfaatkan keupayaan fungsi tatasusunan terbina dalam PHP.

Menggabungkan Tatasusunan

Fungsi array_merge() berguna apabila menggabungkan dua atau lebih banyak tatasusunan. Ia menambahkan elemen tatasusunan kedua kepada yang pertama, mencipta tatasusunan baharu dengan semua elemen daripada kedua-duanya. Dalam kes ini, kita boleh menggunakannya untuk menggabungkan dua tatasusunan input, $array1 dan $array2, ke dalam satu tatasusunan.

Mengalih Keluar Pendua

Untuk mengalih keluar nilai pendua , kita boleh menggunakan fungsi array_unique(). Ia mengembalikan tatasusunan baharu dengan hanya nilai unik daripada tatasusunan input. Pendua dikenal pasti dan dikecualikan daripada hasilnya.

Menggabungkan Fungsi

Dengan menggabungkan kedua-dua fungsi ini, kita boleh mencapai matlamat yang kita inginkan. Kami mula-mula menggabungkan dua tatasusunan input menggunakan array_merge() dan kemudian gunakan array_unique() untuk menghapuskan nilai pendua. Begini rupanya:

$array = array_unique(array_merge($array1, $array2));
Salin selepas log masuk

Coretan kod ini akan mencipta tatasusunan baharu, $array, yang mengandungi objek unik daripada $array1 dan $array2. E-mel pendua akan dialih keluar.

Contoh Penggunaan

Pertimbangkan contoh berikut:

$array1 = [
    (object) ["email" => "gffggfg"],
    (object) ["email" => "example@email.com"],
    (object) ["email" => "wefewf"],
];
$array2 = [
    (object) ["email" => "example@email.com"],
    (object) ["email" => "wefwef"],
    (object) ["email" => "wefewf"],
];

$array = array_unique(array_merge($array1, $array2));

print_r($array);
Salin selepas log masuk

Kod ini akan menghasilkan output berikut:

Array
(
    [0] => stdClass Object
        (
            [email] => gffggfg
        )
    [1] => stdClass Object
        (
            [email] => example@email.com
        )
    [2] => stdClass Object
        (
            [email] => wefewf
        )
    [3] => stdClass Object
        (
            [email] => wefwef
        )
)
Salin selepas log masuk

Seperti yang anda lihat, nilai e-mel pendua, "example@email.com", telah dialih keluar daripada tatasusunan yang digabungkan.

Atas ialah kandungan terperinci Bagaimana untuk Menggabungkan Tatasusunan Objek dan Mengeluarkan Pendua dalam PHP?. 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