Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Adakah subskrip tatasusunan php wujud?

Adakah subskrip tatasusunan php wujud?

WBOY
WBOYasal
2023-05-19 10:26:37722semak imbas

PHP ialah bahasa pengaturcaraan berkuasa yang menyediakan banyak struktur data yang biasa digunakan, seperti tatasusunan. Tatasusunan ialah koleksi elemen yang boleh diakses berdasarkan indeks atau nilai kunci. Dalam PHP, kita boleh menggunakan tatasusunan untuk menyimpan dan mengurus data. Apabila kita menggunakan tatasusunan PHP, kadangkala kita perlu menentukan sama ada subskrip tertentu wujud. Artikel ini akan memperkenalkan cara untuk menentukan sama ada subskrip tatasusunan wujud dalam PHP.

Terdapat banyak cara untuk menentukan sama ada subskrip tatasusunan wujud dalam PHP Kami akan memperkenalkan kaedah ini secara berasingan di bawah.

Kaedah 1: Gunakan fungsi isset() untuk menentukan

Dalam PHP, fungsi isset() digunakan untuk menyemak sama ada pembolehubah telah ditetapkan dan bukan NULL. Fungsi ini boleh menentukan sama ada pembolehubah biasa atau subskrip tatasusunan wujud. Jika subskrip tatasusunan wujud, ia mengembalikan benar jika tidak, ia mengembalikan palsu. Berikut ialah contoh tunjuk cara:

$country = array("China" => "Beijing", "USA" => "Washington D.C.", "Japan" => "Tokyo");
if(isset($country["USA"])) {
    echo "USA's capital city is ".$country["USA"].".";
} else {
    echo "Unknown country.";
}

Dalam contoh di atas, dengan menggunakan fungsi isset(), kami menyemak sama ada "USA" wujud sebagai subskrip tatasusunan. Jika wujud, keluarkan "Ibu kota AS ialah Washington D.C." jika tidak, keluarkan "Negara tidak diketahui.".

Perlu diambil perhatian bahawa fungsi isset() juga perlu mengelakkan amaran "Notis" apabila menggunakannya. Jika indeks tatasusunan tidak wujud, amaran "Notis: Indeks tidak ditentukan" akan muncul. Untuk mengelakkan situasi ini, kita boleh menggunakan fungsi PHP terbina dalam error_reporting() untuk mematikan output amaran, atau menggunakan error_reporting(E_ALL & ~E_NOTICE) untuk mematikan output amaran sahaja tanpa menjejaskan mesej ralat lain.

Kaedah 2: Gunakan fungsi array_key_exists() untuk menentukan

PHP menyediakan fungsi lain untuk menentukan sama ada subskrip tatasusunan wujud, iaitu fungsi array_key_exists(). Fungsi ini menyemak sama ada kunci yang ditentukan wujud dalam tatasusunan. Jika wujud, kembalikan benar; Berikut ialah contoh tunjuk cara:

$fruit = array("apple", "banana", "orange");
if(array_key_exists(1, $fruit)) {
    echo "The second fruit in the array is ".$fruit[1].".";
} else {
    echo "Unknown fruit.";
}

Dalam contoh di atas, kami menggunakan fungsi array_key_exists() untuk menentukan sama ada indeks tatasusunan 1 wujud. Jika ia wujud, keluarkan "Buah kedua dalam tatasusunan ialah pisang." jika tidak, keluarkan "Buah tidak diketahui.".

Perlu diambil perhatian bahawa parameter pertama fungsi array_key_exists() ialah nama kunci, dan parameter kedua ialah tatasusunan. Fungsi ini hanya boleh digunakan apabila anda perlu menentukan sama ada nama kunci tertentu wujud Apabila anda hanya perlu mengetahui sama ada nilai kunci wujud, sebaiknya gunakan fungsi isset().

Kaedah 3: Gunakan fungsi in_array() untuk menentukan

Selain fungsi isset() dan array_key_exists(), PHP juga menyediakan fungsi lain untuk menentukan sama ada subskrip array wujud, iaitu in_array ( )fungsi. Fungsi ini mencari tatasusunan untuk nilai yang ditentukan dan mengembalikan nilai Boolean. Jika nilai yang ditentukan ditemui dalam tatasusunan, ia mengembalikan benar jika tidak, ia mengembalikan palsu. Berikut ialah contoh tunjuk cara:

$color = array("red", "green", "blue");
if(in_array("green", $color)) {
    echo "Green is in the array.";
} else {
    echo "Not found.";
}

Dalam contoh di atas, kami menggunakan fungsi in_array() untuk menentukan sama ada unsur "hijau" wujud dalam tatasusunan. Jika ia wujud, "Hijau adalah dalam tatasusunan."

Perlu diambil perhatian bahawa parameter pertama fungsi in_array() ialah nilai yang akan ditemui, dan parameter kedua ialah tatasusunan. Fungsi ini hanya boleh mencari nilai dalam tatasusunan, bukan kunci.

Kaedah 4: Gunakan nama kunci untuk melintasi tatasusunan

Apabila kita menggunakan foreach untuk melintasi tatasusunan, kita boleh menggunakan nama kunci untuk menentukan sama ada subskrip tatasusunan wujud. Berikut ialah contoh tunjuk cara:

$animal = array("dog" => "golden retriever", "cat" => "persian", "fish" => "goldfish");
foreach($animal as $key => $value) {
    if($key == "cat") {
        echo "The breed of cat is ".$value.".";
    }
}

Dalam contoh di atas, kami mengulangi tatasusunan $animal menggunakan foreach. Apabila nama kunci ialah "kucing", nilai kunci yang sepadan dengan nama kunci adalah output. "$key" mewakili nama kunci elemen tatasusunan semasa dan "$value" mewakili nilai kunci elemen tatasusunan semasa. Jika nama kunci tidak wujud, pernyataan output yang sepadan tidak akan dilaksanakan.

Perlu diambil perhatian bahawa dengan menggunakan foreach untuk melintasi tatasusunan, anda hanya boleh menentukan sama ada nama kunci wujud, tetapi anda tidak boleh menyemak berulang kali sama ada nama kunci wujud.

Kesimpulan

Dalam PHP, kita boleh menggunakan pelbagai kaedah untuk menentukan sama ada subskrip tatasusunan wujud. Setiap kaedah mempunyai kelebihan dan kekurangan dan harus dipilih berdasarkan situasi sebenar. Apabila menggunakan kaedah ini, anda juga perlu memberi perhatian untuk mengelakkan amaran "Notis" dan menjalankan ujian kod yang sesuai untuk memastikan ketepatan dan kestabilan kod.

Atas ialah kandungan terperinci Adakah subskrip tatasusunan php wujud?. 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