PHP menentukan sama ada terdapat nilai dalam dua tatasusunan

WBOY
Lepaskan: 2023-05-23 10:19:07
asal
337 orang telah melayarinya

Dalam PHP, selalunya perlu membandingkan atau mencari dua tatasusunan. Satu operasi biasa adalah untuk menentukan sama ada dua tatasusunan mempunyai nilai kunci yang sama.

Untuk menentukan sama ada dua tatasusunan mempunyai nilai kunci yang sama, anda boleh menggunakan dua kaedah dalam PHP:

  1. fungsi array_intersect_key()

array_intersect_key() Fungsi ini boleh digunakan untuk mendapatkan elemen dengan nilai kunci yang sama dalam dua tatasusunan. Gunakan fungsi ini untuk mula-mula mendapatkan elemen dengan nilai kunci yang sama dalam dua tatasusunan, dan kemudian tentukan sama ada nilainya adalah sama. Format fungsi ini ialah:

array_intersect_key(array1, array2)
Salin selepas log masuk

Kod sampel adalah seperti berikut:

<?php
    $arr1 = array('a'=>1, 'b'=>2, 'c'=>3);
    $arr2 = array('d'=>4, 'b'=>5, 'f'=>6);
    $result = array_intersect_key($arr1, $arr2);
    if(count($result) > 0) {
        echo "存在相同键值";
    } else {
        echo "不存在相同键值";
    }
?>
Salin selepas log masuk

Kod pertama mentakrifkan dua tatasusunan $arr1 dan $arr2, setiap satu mengandungi nilai kunci yang berbeza. Kemudian gunakan fungsi array_intersect_key() untuk mendapatkan elemen dengan nilai kunci yang sama dalam dua tatasusunan, simpannya dalam tatasusunan $result, dan akhirnya tentukan sama ada terdapat elemen dalam tatasusunan.

  1. array_intersect_assoc() function

array_intersect_assoc() fungsi juga boleh digunakan untuk mendapatkan elemen dengan nilai kunci yang sama dalam dua tatasusunan, tetapi ia akan mempertimbangkan nilai kunci dan nama kunci Situasi yang sama pada masa yang sama. Gunakan fungsi ini untuk menentukan sama ada nilai kunci dan nama kunci yang wujud dalam dua tatasusunan adalah sama. Format fungsi ini ialah:

array_intersect_assoc(array1, array2)
Salin selepas log masuk

Kod sampel adalah seperti berikut:

<?php
    $arr1 = array('a'=>1, 'b'=>2, 'c'=>3);
    $arr2 = array('d'=>4, 'b'=>5, 'f'=>6);
    $result = array_intersect_assoc($arr1, $arr2);
    if(count($result) > 0) {
        echo "存在相同键值和键名";
    } else {
        echo "不存在相同键值和键名";
    }
?>
Salin selepas log masuk

Kod ini serupa dengan kod sampel di atas, kecuali ia menggunakan fungsi array_intersect_assoc() untuk menentukan sama ada terdapat nilai kunci dan nama kunci yang sama.

Ringkasan

Dalam PHP, menggunakan fungsi array_intersect_key() dan array_intersect_assoc() boleh menentukan dengan mudah sama ada dua tatasusunan mempunyai elemen dengan nilai kunci dan nama kunci yang sama. Apabila menggunakan fungsi ini, sila ambil perhatian bahawa fungsi mengembalikan tatasusunan, dan anda perlu menggunakan fungsi count() untuk menentukan sama ada terdapat elemen yang sama.

Atas ialah kandungan terperinci PHP menentukan sama ada terdapat nilai dalam dua tatasusunan. 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!