Rumah >pembangunan bahagian belakang >tutorial php >Cara menggunakan fungsi array_diff untuk mendapatkan set perbezaan dalam PHP

Cara menggunakan fungsi array_diff untuk mendapatkan set perbezaan dalam PHP

WBOY
WBOYasal
2023-06-26 14:57:011558semak imbas

Dalam PHP, tatasusunan ialah jenis data yang sangat biasa, biasanya digunakan untuk menyimpan set data yang berkaitan. Dalam projek pembangunan sebenar, selalunya perlu membandingkan berbilang tatasusunan dan mengekstrak perbezaannya. Pada masa ini, anda boleh menggunakan fungsi array_diff dalam PHP untuk mencapai ini. Fungsi

array_diff ialah fungsi yang digunakan dalam PHP untuk mencari perbezaan antara dua atau lebih tatasusunan Penggunaan khususnya adalah seperti berikut:

array_diff (array $array1 , array $array2 [, array $... ]) : array

Antaranya, parameter $array1 ialah tatasusunan asas untuk dibandingkan, dan $array2 ialah. jumlah untuk dibandingkan. Tatasusunan asas ialah tatasusunan untuk perbandingan, dan parameter seterusnya $... boleh terus lulus dalam tatasusunan lain yang perlu dibandingkan. Fungsi ini akan mengembalikan semua elemen yang berbeza daripada tatasusunan asas ke dalam tatasusunan baharu.

Mari kita ambil contoh untuk melihat cara menggunakan fungsi array_diff untuk mencari perbezaan antara dua tatasusunan.

<?php
$array1 = array("a" => "apple", "b" => "banana", "c" => "cherry");
$array2 = array("b" => "banana", "c" => "cherry", "d" => "date");

$result = array_diff($array1, $array2);
print_r($result);
?>

Hasil keluaran kod di atas ialah:

Array
(
    [a] => apple
)

Anda boleh melihat bahawa kerana hanya satu elemen "a" dalam $array1 berbeza daripada $array2, fungsi array_diff mengembalikan tatasusunan baharu yang mengandungi hanya elemen "a".

Selain menghantar dalam dua tatasusunan, fungsi array_diff juga boleh lulus dalam pelbagai tatasusunan untuk perbandingan. Mari lihat contoh menghantar dalam tiga tatasusunan:

<?php
$array1 = array("a" => "apple", "b" => "banana", "c" => "cherry");
$array2 = array("b" => "banana", "c" => "cherry", "d" => "date");
$array3 = array("b" => "banana");

$result = array_diff($array1, $array2, $array3);
print_r($result);
?>

Keluaran kod di atas ialah:

Array
(
    [a] => apple
    [c] => cherry
)

Dapat dilihat bahawa antara tiga tatasusunan, hanya elemen "a" dan "c" $array1 adalah berbeza daripada tatasusunan lain adalah berbeza, jadi fungsi array_diff mengembalikan tatasusunan baharu yang mengandungi dua elemen ini.

Adalah penting untuk ambil perhatian bahawa fungsi array_diff membandingkan nilai utama tatasusunan, bukan hanya nilai. Iaitu, dua elemen dianggap sama hanya jika kunci dan nilainya adalah sama. Jika anda ingin membandingkan hanya nilai tatasusunan, anda boleh menggunakan fungsi seperti array_diff_key, array_diff_assoc dan array_udiff.

Untuk meringkaskan, fungsi array_diff ialah fungsi yang digunakan untuk membandingkan perbezaan antara berbilang tatasusunan dan mengembalikan elemen yang berbeza. Untuk senario yang memerlukan perbandingan tatasusunan dalam PHP, fungsi array_diff ialah alat yang sangat praktikal.

Atas ialah kandungan terperinci Cara menggunakan fungsi array_diff untuk mendapatkan set perbezaan 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