Rumah > pembangunan bahagian belakang > masalah PHP > Bagaimana untuk menentukan sama ada pembolehubah tatasusunan wujud dalam php

Bagaimana untuk menentukan sama ada pembolehubah tatasusunan wujud dalam php

PHPz
Lepaskan: 2023-04-24 09:23:33
asal
775 orang telah melayarinya

Dalam PHP, kita selalunya perlu menentukan sama ada pembolehubah tatasusunan wujud untuk melaksanakan pemprosesan logik yang sepadan. Di bawah ini kami memperkenalkan beberapa kaedah untuk menentukan sama ada pembolehubah tatasusunan wujud.

  1. Gunakan fungsi isset()

fungsi isset() ialah fungsi terbina dalam dalam PHP, yang digunakan untuk menentukan sama ada pembolehubah telah ditetapkan dan tidak NULL. Fungsi isset() mengembalikan benar jika pembolehubah ditetapkan, palsu sebaliknya.

Kod contoh:

$arr = array('a' => 1, 'b' => 2);
if (isset($arr['a'])) {
    echo '$arr[\'a\'] 存在';
} else {
    echo '$arr[\'a\'] 不存在';
}
Salin selepas log masuk

Penjelasan: Kod di atas mentakrifkan tatasusunan $arr dan menentukan sama ada salah satu elemennya $arr['a'] wujud. Memandangkan $arr['a'] wujud, hasilnya ialah $arr['a'] wujud.

  1. Gunakan fungsi array_key_exists()

fungsi array_key_exists() juga merupakan fungsi terbina dalam PHP, yang digunakan untuk menentukan sama ada nama kunci yang ditentukan wujud dalam tatasusunan. Mengembalikan benar jika kunci yang ditentukan wujud, palsu sebaliknya.

Kod contoh:

$arr = array('a' => 1, 'b' => 2);
if (array_key_exists('a', $arr)) {
    echo '\'a\' 存在';
} else {
    echo '\'a\' 不存在';
}
Salin selepas log masuk

Penjelasan: Kod di atas menentukan sama ada terdapat elemen dengan nama kunci 'a' dalam tatasusunan $arr. Oleh kerana unsur itu wujud, hasilnya ialah 'a' wujud.

Perlu diambil perhatian bahawa apabila menggunakan fungsi array_key_exists() untuk menentukan sama ada kunci wujud, ia tidak akan menentukan sama ada nilai yang sepadan dengan kunci itu adalah NULL. Jika kunci wujud tetapi nilai yang sepadan ialah NULL, benar masih akan dikembalikan.

  1. Gunakan fungsi in_array()

Fungsi in_array() digunakan untuk menentukan sama ada nilai yang ditentukan wujud dalam tatasusunan. Mengembalikan benar jika nilai wujud, palsu sebaliknya. Perlu diingatkan bahawa fungsi in_array() hanya boleh menentukan nilai dalam tatasusunan, bukan nama kunci.

Kod sampel:

$arr = array(1, 2, 3);
if (in_array(2, $arr)) {
    echo '2 存在';
} else {
    echo '2 不存在';
}
Salin selepas log masuk

Penjelasan: Kod di atas menentukan sama ada terdapat elemen dengan nilai 2 dalam tatasusunan $arr. Oleh kerana unsur itu wujud, hasilnya ialah 2 wujud.

Perlu diambil perhatian bahawa apabila fungsi in_array() menentukan sama ada nilai wujud, ia menentukan sama ada nilai elemen adalah sama dengan nilai yang ditentukan. Oleh itu, apabila menilai kewujudan nilai, anda perlu memberi perhatian kepada sama ada jenis nilai elemen adalah konsisten dengan jenis nilai yang ditentukan.

  1. Gunakan fungsi empty()

Fungsi empty() digunakan untuk menentukan sama ada pembolehubah kosong. Fungsi empty() mengembalikan benar jika nilai pembolehubah ialah '', 0, '0', NULL, FALSE atau tatasusunan kosong, jika tidak ia mengembalikan palsu.

Kod sampel:

$arr1 = array();
$arr2 = array('a' => 1, 'b' => 2);
if (empty($arr1)) {
    echo '$arr1 是一个空数组';
} else {
    echo '$arr1 不是一个空数组';
}

if (empty($arr2['c'])) {
    echo '$arr2[\'c\'] 不存在或者值为 NULL';
} else {
    echo '$arr2[\'c\'] 存在且值不为 NULL';
}
Salin selepas log masuk

Penjelasan: Kod di atas menentukan sama ada unsur dalam tatasusunan kosong dan tatasusunan dengan kekunci 'c' wujud. Memandangkan unsur-unsur dalam tatasusunan kosong pasti tidak wujud, dan nilai $arr2['c'] dalam tatasusunan dengan nama kunci 'c' ialah NULL, hasil yang dijalankan ialah: $arr1 ialah tatasusunan kosong; 'c' ] tidak wujud atau nilainya NULL.

Perlu diambil perhatian bahawa untuk pembolehubah tatasusunan yang tidak wujud, secara langsung menggunakan fungsi empty() akan melaporkan ralat, jadi anda perlu menggunakan fungsi isset() untuk menentukan sama ada pembolehubah itu wujud terlebih dahulu. Contohnya:

if (isset($arr) && empty($arr)) {
    echo '$arr 是一个空数组';
}
Salin selepas log masuk

Kod di atas mula-mula menggunakan isset() untuk menentukan sama ada pembolehubah $arr wujud, dan jika ia wujud, kemudian gunakan empty() untuk menentukan sama ada ia kosong.

Atas ialah kandungan terperinci Bagaimana untuk menentukan sama ada pembolehubah tatasusunan wujud dalam php. 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