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

Bagaimana untuk menentukan sama ada pembolehubah tatasusunan wujud dalam php

PHPz
PHPzasal
2023-04-24 09:07:33700semak imbas

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\'] 不存在';
}

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\' 不存在';
}

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 不存在';
}

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';
}

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 是一个空数组';
}

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!

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