Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bagaimana untuk mengecualikan dua tatasusunan dalam php

Bagaimana untuk mengecualikan dua tatasusunan dalam php

PHPz
PHPzasal
2023-04-25 17:36:27626semak imbas

Dalam PHP, kita selalunya perlu melakukan operasi tatasusunan, termasuk menapis, menyusun dan mengecualikan tatasusunan. Artikel ini akan memberi tumpuan kepada cara mengecualikan dua tatasusunan dalam PHP.

Pertama, kita perlu memahami maksud pengecualian. Pengecualian ialah penyingkiran elemen tertentu daripada satu tatasusunan yang muncul dalam tatasusunan lain. Operasi ini sering digunakan dalam projek sebenar, yang boleh mengoptimumkan kecekapan berjalan program dan meningkatkan kebolehbacaan kod.

Dalam PHP, kita boleh menggunakan fungsi array_diff() untuk melaksanakan operasi pengecualian tatasusunan. Fungsi ini akan mengembalikan tatasusunan nilai yang terdapat dalam tatasusunan pertama tetapi tidak dalam tatasusunan hujah yang lain. Berikut ialah sintaks asas bagi fungsi ini:

array_diff(array1, array2, array3, …)

Antaranya, array1 ialah parameter yang diperlukan, menunjukkan tatasusunan yang perlu dikecualikan; tatasusunan2, tatasusunan3, dsb. ialah parameter pilihan yang mewakili tatasusunan tambahan yang perlu dikecualikan oleh fungsi. Jika parameter ini tidak disediakan, semua nilai dalam tatasusunan1 yang tiada dalam tatasusunan parameter lain akan dikembalikan.

Mari kita lihat contoh praktikal:

$first_array = array("apple", "banana", "ceri", "date");
$second_array = array (" ceri", "tarikh", "elderberry", "fig");

$result = array_diff($first_array, $second_array);

print_r($result);

Dalam contoh di atas, kami menentukan dua tatasusunan $first_array dan $second_array. Pembolehubah $result menyimpan hasil selepas mengecualikan $second_array daripada $first_array. Apabila kita mencetak $result, outputnya ialah:

Array
(

[0] => apple
[1] => banana

)

Hasil kod di atas ialah hanya $second_array dikecualikan Elemen yang muncul dalam $first_array, manakala elemen yang masih muncul dalam $first_array tidak berubah.

Seterusnya, mari lihat contoh yang lebih kompleks. Katakan tatasusunan yang ingin kita kecualikan ialah tatasusunan bersekutu dan perlu dibandingkan dengan nilai kunci. Seperti yang ditunjukkan dalam kod berikut:

$first_array = array("a" => "apple", "c" => "cherry", "d" => "date");
$second_array = tatasusunan("c" => "ceri", "d" => "tarikh", "e" => "elderberry", "f" => "ra");

$result = array_diff_assoc($first_array, $second_array);

print_r($result);

Dalam kod di atas, kami menggunakan fungsi array_diff_assoc() untuk melaksanakan nilai kunci pengecualian. Perbezaan antara fungsi ini dan fungsi array_diff() ialah ia menyemak sama ada setiap nilai kunci dalam tatasusunan bersekutu adalah sama. Ini berguna jika kita ingin mengecualikan elemen daripada dua tatasusunan dengan nilai kunci yang sama.

Apabila kita melaksanakan kod ini, hasil output ialah:

Array
(

[a] => apple

)

Hasil di atas adalah kerana $ first_array Hanya nilai "apple" yang sepadan dengan kekunci "a" tidak wujud dalam $second_array.

Setakat ini, kami telah mempelajari cara mengecualikan dua tatasusunan dalam PHP. Gunakan fungsi array_diff() untuk mengecualikan elemen yang muncul dalam satu tatasusunan dan yang lain dalam dua tatasusunan, dan gunakan fungsi array_diff_assoc() untuk mengecualikan tatasusunan mengikut nilai kunci. Operasi ini akan membantu kami mengendalikan operasi tatasusunan dalam PHP dan menjadikan kod lebih ringkas.

Atas ialah kandungan terperinci Bagaimana untuk mengecualikan dua 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