Rumah > pembangunan bahagian belakang > masalah PHP > Tatasusunan PHP menentukan sama ada terdapat subskrip

Tatasusunan PHP menentukan sama ada terdapat subskrip

WBOY
Lepaskan: 2023-05-11 11:39:36
asal
676 orang telah melayarinya

PHP ialah bahasa pengaturcaraan sebelah pelayan yang popular yang biasa digunakan untuk pembangunan web. Sebagai bahasa berorientasikan objek, PHP menyediakan banyak fungsi terbina dalam dan struktur data, antaranya tatasusunan adalah salah satu struktur data yang paling biasa digunakan. Apabila menggunakan tatasusunan PHP, kita selalunya perlu menentukan sama ada tatasusunan mengandungi subskrip tertentu Artikel ini akan membincangkan cara melaksanakan fungsi ini.

Gambaran Keseluruhan Tatasusunan

Dalam PHP, tatasusunan ialah struktur data yang digunakan untuk menyimpan berbilang nilai. Ia boleh diakses dengan indeks berangka atau indeks rentetan. Dalam PHP, tatasusunan dicipta menggunakan fungsi tatasusunan() dan boleh mengandungi sebarang jenis nilai, termasuk integer, rentetan dan juga tatasusunan lain.

Tatasusunan PHP mempunyai ciri-ciri berikut:

  • Elemen tatasusunan boleh diakses menggunakan nilai indeks atau nama kunci.
  • Elemen tatasusunan boleh terdiri daripada sebarang jenis nilai, malah tatasusunan lain.
  • Susun atur PHP ialah struktur data dinamik yang boleh menambah, memadam dan mengubah suai elemen secara fleksibel.

Contoh asas tatasusunan PHP ialah:

$fruits = array("Apple", "Banana", "Orange");
Salin selepas log masuk

Tatasusunan yang dibuat dengan cara ini mengandungi tiga elemen, yang boleh dikenal pasti melalui indeks (0, 1, 2) atau kunci ('0' , '1', '2') akses.

Nilai sama ada tatasusunan mengandungi subskrip tertentu

Dalam PHP, menilai sama ada tatasusunan mengandungi subskrip tertentu ialah operasi penting. Kaedah yang paling biasa ialah menggunakan fungsi isset(). Fungsi isset() digunakan untuk menentukan sama ada pembolehubah telah ditakrifkan dan bukan nol. Dalam tatasusunan, fungsi isset() digunakan untuk menentukan sama ada subskrip yang diberikan wujud.

Sebagai contoh, kita boleh menggunakan kod berikut untuk menentukan sama ada tatasusunan $fruits mengandungi subskrip 2:

$fruits = array("Apple", "Banana", "Orange");
if(isset($fruits[2])){
    echo "存在下标2";
} else {
    echo "不存在下标2";
}
Salin selepas log masuk

Hasil output ialah: "Subskrip 2 wujud".

Dalam contoh di atas, kami menggunakan fungsi isset() untuk menentukan sama ada tatasusunan $fruits mengandungi subskrip 2. Oleh kerana $fruits[2] wujud (nilainya 'Oren'), fungsi isset() mengembalikan benar.

Begitu juga, kita boleh menggunakan kod berikut untuk menentukan sama ada tatasusunan $fruits mengandungi subskrip 4:

$fruits = array("Apple", "Banana", "Orange");
if(isset($fruits[4])){
    echo "存在下标4";
} else {
    echo "不存在下标4";
}
Salin selepas log masuk

Hasil output ialah: "Subskrip 4 tidak wujud".

Dalam contoh di atas, memandangkan subskrip 4 tidak wujud dalam tatasusunan $fruits, fungsi isset() mengembalikan palsu.

Perlu diambil perhatian bahawa fungsi isset() hanya boleh digunakan untuk menentukan sama ada subskrip wujud dan tidak boleh menentukan sama ada nilai yang sepadan adalah nol. Jika anda perlu menentukan sama ada subskrip wujud dan sama ada nilainya adalah batal pada masa yang sama, anda boleh menggunakan fungsi array_key_exists().

fungsi array_key_exists()

fungsi array_key_exists() ialah fungsi dalam PHP yang digunakan untuk menentukan sama ada nama kunci wujud dalam tatasusunan ialah:

bool array_key_exists(mixed $key, array $array)
Salin selepas log masuk

di mana $ kunci mewakili nama kunci yang akan dinilai, dan $array mewakili tatasusunan yang akan dinilai.

Sebagai contoh, kita boleh menggunakan kod berikut untuk menentukan sama ada tatasusunan $fruits mengandungi kunci 2:

$fruits = array("Apple", "Banana", "Orange");
if(array_key_exists(2, $fruits)){
    echo "存在键名2";
} else {
    echo "不存在键名2";
}
Salin selepas log masuk

Hasil output ialah: "Kunci 2 tidak wujud".

Dalam contoh di atas, kami menggunakan fungsi array_key_exists() untuk menentukan sama ada tatasusunan $fruits mengandungi kunci 2. Memandangkan tatasusunan $fruits menggunakan pengindeksan angka, fungsi array_key_exists() mencari subskrip, bukan nama kunci. Oleh kerana subskrip 2 tidak wujud, fungsi array_key_exists() mengembalikan palsu.

Begitu juga, kita boleh menggunakan kod berikut untuk menentukan sama ada tatasusunan $fruits mengandungi nama kunci 'Apple':

$fruits = array("Apple", "Banana", "Orange");
if(array_key_exists('Apple', $fruits)){
    echo "存在键名'Apple'";
} else {
    echo "不存在键名'Apple'";
}
Salin selepas log masuk

Hasil output ialah: "Nama kunci 'Apple' wujud" .

Dalam contoh di atas, kami menggunakan fungsi array_key_exists() untuk menentukan sama ada tatasusunan $fruits mengandungi nama kunci 'Apple'. Memandangkan tatasusunan $fruits menggunakan pengindeksan rentetan, fungsi array_key_exists() mencari nama kunci. Memandangkan nama kunci 'Apple' wujud, fungsi array_key_exists() mengembalikan benar.

Perlu diambil perhatian bahawa walaupun fungsi array_key_exists() adalah lebih berkuasa daripada fungsi isset(), ia adalah rendah sedikit dalam prestasi. Oleh itu, jika keperluan boleh dipenuhi, adalah disyorkan untuk menggunakan fungsi isset() untuk penghakiman.

Ringkasan

Dalam PHP, menentukan sama ada tatasusunan mengandungi subskrip tertentu ialah tugas biasa. Kita boleh menggunakan fungsi isset() atau fungsi array_key_exists() untuk mencapai fungsi ini. Apabila menggunakannya, anda perlu memberi perhatian kepada perkara berikut:

  • fungsi isset() digunakan untuk menentukan sama ada subskrip tertentu wujud dan tidak boleh menentukan sama ada nilai sepadannya adalah nol.
  • Fungsi array_key_exists() digunakan untuk menentukan sama ada nama kunci tertentu wujud. Ia boleh digunakan untuk tatasusunan dengan indeks angka dan indeks rentetan.
  • Dari segi prestasi, fungsi isset() adalah lebih baik daripada fungsi array_key_exists().
  • Dalam pembangunan sebenar, kaedah yang sesuai harus dipilih dan dinilai berdasarkan situasi tertentu.

Atas ialah kandungan terperinci Tatasusunan PHP menentukan sama ada terdapat subskrip. 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