Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Gunakan fungsi PHP array_intersect_key() untuk mendapatkan persimpangan

Gunakan fungsi PHP array_intersect_key() untuk mendapatkan persimpangan

WBOY
WBOYasal
2023-06-27 19:31:391040semak imbas

Apabila membangun menggunakan PHP, ia selalunya melibatkan tatasusunan pemprosesan. Antaranya, mengambil persilangan dua tatasusunan adalah tugas biasa. PHP menyediakan fungsi array_intersect_key() yang sangat mudah untuk menangani masalah ini. Fungsi

array_intersect_key() adalah untuk mengekalkan hanya elemen dengan nama kunci yang sama dalam dua atau lebih tatasusunan dan mengembalikan tatasusunan hasil. Ringkasnya, ia memerlukan persilangan dua tatasusunan, tetapi hanya membandingkan kuncinya dan bukan nilainya.

Parameter fungsi ini ialah dua atau lebih tatasusunan yang perlu dibandingkan, yang boleh menjadi satu atau lebih. Berikut ialah sintaks fungsi:

array_intersect_key(array1, array2 [, array3...])

di mana tatasusunan1 ialah tatasusunan pertama untuk dibandingkan, tatasusunan2 ialah tatasusunan kedua, dan tatasusunan3 boleh menjadi tatasusunan yang lebih banyak. Jika tatasusunan3 dan lebih banyak tatasusunan tidak ditentukan, hanya dua tatasusunan pertama dibandingkan secara lalai.

Berikut ialah contoh mudah yang menunjukkan cara menggunakan fungsi array_intersect_key():

$array1 = array('a'=>'apple', 'b'=>'banana', 'c'=>'cherry');
$array2 = array('a'=>'orange', 'c'=>'cherry', 'd'=>'dates');
$result = array_intersect_key($array1, $array2);
print_r($result);

Dalam contoh di atas, kami mentakrifkan dua tatasusunan $array1 dan $array2, yang masing-masing mengandungi beberapa pasangan nilai kunci. Kemudian, kami memanggil fungsi array_intersect_key() , menghantar $array1 dan $array2 sebagai parameter. Fungsi ini mengembalikan tatasusunan hasil yang mengandungi elemen dengan kunci yang sama dalam $array1 dan $array2. Akhir sekali, gunakan fungsi print_r() untuk mengeluarkan tatasusunan hasil.

Jalankan contoh di atas dan anda akan mendapat output berikut:

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

Seperti yang anda lihat, fungsi ini mengembalikan tatasusunan baharu, yang hanya mengandungi dua elemen dengan nama kunci yang sama a dan c dalam $array1 dan $array2.

Perlu diingat bahawa fungsi ini membandingkan nama kunci dan bukannya nilai kunci. Jika kedua-dua tatasusunan mempunyai nama kunci yang sama tetapi nilai yang berbeza, maka fungsi akan menggunakan nilai dalam tatasusunan 1 sebagai nilai dalam tatasusunan hasil.

Apabila menggunakan fungsi array_intersect_key(), anda juga perlu memberi perhatian kepada perkara berikut:

  1. Fungsi ini hanya membandingkan nama kunci dan bukan nilai kunci. Jika anda perlu membandingkan nilai utama, gunakan fungsi array_intersect().
  2. Jika terdapat dua atau lebih tatasusunan dengan nama kunci yang sama tetapi nilai kunci yang berbeza, hasil yang dikembalikan oleh fungsi ini mengandungi nilai yang sepadan dengan kunci dalam tatasusunan pertama.
  3. Jika tiada nama kunci yang sama ditemui, fungsi mengembalikan tatasusunan kosong.

Ringkasnya, fungsi array_intersect_key() ialah fungsi yang sangat praktikal yang boleh dengan mudah mendapatkan persilangan dua atau lebih tatasusunan dan akan digunakan dengan kerap dalam pembangunan PHP.

Atas ialah kandungan terperinci Gunakan fungsi PHP array_intersect_key() untuk mendapatkan persimpangan. 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