Rumah >pembangunan bahagian belakang >masalah PHP >Pertanyaan PHP sama ada tatasusunan termasuk nilai kunci

Pertanyaan PHP sama ada tatasusunan termasuk nilai kunci

王林
王林asal
2023-05-11 10:44:08763semak imbas

Dalam pembangunan PHP, menanyakan sama ada tatasusunan mengandungi nilai kunci tertentu ialah masalah yang sering dihadapi. Artikel ini akan memperkenalkan beberapa kaedah untuk menentukan sama ada tatasusunan mengandungi nilai kunci tertentu.

1 Gunakan fungsi in_array
Fungsi in_array boleh menentukan sama ada nilai berada dalam array, tetapi fungsi ini tidak boleh menentukan sama ada nilai kunci berada dalam array sahaja, kerana secara lalai fungsi in_array sahaja menentukan korespondensi nilai kunci Sama ada nilai itu dalam tatasusunan. Walau bagaimanapun, kita boleh menggunakan fungsi array_keys dalam tatasusunan untuk mendapatkan nama kunci tatasusunan, dan kemudian gunakan fungsi in_array untuk menentukan sama ada nilai kunci yang ditentukan berada dalam nama kunci.

Berikut ialah kod sampel:

$array = array('foo' => 'bar', 'bar' => 'foo');
if (in_array('foo', array_keys($array))) {
    echo "包含键值foo";
} else {
    echo "不包含键值foo";
}

Hasil yang dijalankan ialah: Mengandungi nilai kunci foo

2 Gunakan fungsi array_key_exists
Fungsi array_key_exists boleh menentukan sama ada nama kunci dalam tatasusunan wujud, mengembalikan benar jika wujud, sebaliknya mengembalikan palsu.

Berikut ialah contoh kod:

$array = array('foo' => 'bar', 'bar' => 'foo');
if (array_key_exists('foo', $array)) {
    echo "包含键值foo";
} else {
    echo "不包含键值foo";
}

Hasil yang dijalankan ialah: Mengandungi nilai kunci foo

Perlu diingat bahawa apabila menggunakan array_key_exists fungsi untuk menentukan sama ada kunci nilai berada dalam tatasusunan, hanya Anda perlu memasukkan nama kunci untuk dinilai, bukan nilai yang sepadan dengan nama kunci.

3. Gunakan fungsi isset
Fungsi isset adalah serupa dengan fungsi array_key_exists, tetapi ia bukan sahaja menentukan sama ada nama kunci wujud dalam tatasusunan, tetapi juga menentukan sama ada nilai itu sepadan nama kuncinya adalah null. Jika nilai yang sepadan dengan nama kunci bukan nol, ia mengembalikan benar, jika tidak ia mengembalikan palsu.

Berikut ialah contoh kod:

$array = array('foo' => 'bar', 'bar' => 'foo');
if (isset($array['foo'])) {
    echo "包含键值foo";
} else {
    echo "不包含键值foo";
}

Hasil yang dijalankan ialah: Mengandungi nilai kunci foo

4 Gunakan fungsi array_search
fungsi array_search untuk mencari nilai yang ditentukan dalam tatasusunan, Mengembalikan nama kunci yang sepadan. Anda boleh menentukan sama ada tatasusunan mengandungi nilai kunci yang ditentukan dengan menentukan sama ada nilai pulangan fungsi carian_tatasusunan adalah palsu.

Berikut ialah kod sampel:

$array = array('foo' => 'bar', 'bar' => 'foo');
if (array_search('foo', $array) !== false) {
    echo "包含键值foo";
} else {
    echo "不包含键值foo";
}

Hasil yang dijalankan ialah: Mengandungi nilai kunci foo

Perlu diingat bahawa jika terdapat berbilang nama kunci dalam tatasusunan , nilai yang sepadan adalah Tentukan nilai, dan fungsi array_search hanya mengembalikan nilai nama kunci pertama.

Ringkasnya, empat kaedah di atas boleh digunakan untuk menentukan sama ada tatasusunan mengandungi nama kunci tertentu. Mengikut senario dan keperluan yang berbeza, kita boleh memilih kaedah yang sesuai untuk menentukan sama ada tatasusunan mengandungi nilai kunci yang ditentukan.

Atas ialah kandungan terperinci Pertanyaan PHP sama ada tatasusunan termasuk nilai kunci. 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