Rumah >pembangunan bahagian belakang >tutorial php >Bagaimana untuk menentukan sama ada nilai berada dalam tatasusunan dalam php (4 kaedah)

Bagaimana untuk menentukan sama ada nilai berada dalam tatasusunan dalam php (4 kaedah)

PHPz
PHPzasal
2023-04-14 18:01:464178semak imbas

Menentukan sama ada nilai berada dalam tatasusunan dalam PHP ialah masalah yang sering dihadapi semasa pembangunan. Menggunakan pelbagai fungsi terbina dalam PHP, anda boleh dengan cepat menentukan sama ada nilai dalam tatasusunan Artikel ini akan memperkenalkan anda kepada beberapa kaedah yang biasa digunakan.

1. fungsi in_array

Fungsi in_array PHP boleh menentukan sama ada nilai berada dalam tatasusunan Jika nilai itu dalam tatasusunan, ia mengembalikan benar, jika tidak ia akan mengembalikan palsu.

Format sintaks fungsi ini adalah seperti berikut:

in_array($needle, $haystack);

Di mana, $needle mewakili nilai yang akan ditemui dan $haystack mewakili tatasusunan yang hendak dicari.

Berikut ialah contoh fungsi in_array:

$arr = array('a', 'b', 'c', 'd');
if (in_array('b', $arr)) {
    echo 'b'.'在数组中';
} else {
    echo 'b'.'不在数组中';
}

Kod ini akan mengeluarkan: "b dalam tatasusunan".

Jika tatasusunan yang akan dinilai mengandungi sejumlah besar data, kecekapan menggunakan fungsi in_array akan menjadi agak rendah dan ia akan dengan mudah menduduki banyak sumber sistem.

2. fungsi array_search

Selain fungsi in_array, terdapat juga fungsi array_search dalam PHP yang boleh mencapai fungsi yang sama. Fungsi ini boleh mencari kedudukan nilai yang ditentukan dalam tatasusunan, jika nilai itu wujud, kembalikan indeks nilai, jika tidak, kembalikan palsu.

Format sintaks fungsi ini adalah seperti berikut:

array_search($needle, $haystack);

Di mana, $needle mewakili nilai yang akan ditemui dan $haystack mewakili tatasusunan yang hendak dicari.

Berikut ialah contoh fungsi array_search:

$arr = array('a', 'b', 'c', 'd');
$key = array_search('b', $arr);
if ($key !== false) {
    echo 'b'.'在数组中,索引为'.$key;
} else {
    echo 'b'.'不在数组中';
}

Kod ini akan mengeluarkan: "b dalam tatasusunan, indeks ialah 1".

Apabila bilangan elemen dalam tatasusunan adalah besar, adalah kurang cekap untuk melintasi keseluruhan tatasusunan untuk mencari nilai.

3. fungsi isset

Fungsi isset PHP boleh digunakan untuk menentukan sama ada pembolehubah wujud dan nilainya bukan nol. Untuk tatasusunan, mengembalikan benar jika kunci wujud dalam tatasusunan, palsu sebaliknya.

Format sintaks fungsi ini adalah seperti berikut:

isset($array['key']);

Berikut ialah contoh fungsi isset:

$arr = array('a', 'b', 'c', 'd');
if (isset($arr[1])) {
    echo '数组中存在索引为1的元素';
} else {
    echo '数组中不存在索引为1的元素';
}

Kod ini akan mengeluarkan: "Ada ialah indeks 1 dalam elemen tatasusunan".

4. Fungsi array_key_exists

Fungsi array_key_exists PHP digunakan untuk menentukan sama ada kunci yang ditentukan wujud dalam tatasusunan Jika kunci itu wujud, ia akan mengembalikan benar.

Format sintaks bagi fungsi ini adalah seperti berikut:

array_key_exists($key, $array);

Di mana, $key mewakili kunci yang hendak disemak dan $array mewakili tatasusunan yang akan disemak.

Berikut ialah contoh fungsi array_key_exists:

$arr = array('a' => 1, 'b' => 2, 'c' => 3);
if (array_key_exists('b', $arr)) {
    echo '数组中存在键为b的元素';
} else {
    echo '数组中不存在键为b的元素';
}

Kod ini akan mengeluarkan: "Elemen dengan kunci b wujud dalam tatasusunan."

Ringkasnya, dalam PHP anda boleh menggunakan fungsi in_array atau fungsi array_search untuk menentukan sama ada nilai berada dalam tatasusunan, dan anda boleh menggunakan fungsi isset atau fungsi array_key_exists untuk menentukan sama ada kunci yang ditentukan wujud dalam tatasusunan. Dalam pembangunan sebenar, adalah perlu untuk memilih fungsi yang sesuai untuk digunakan mengikut situasi tertentu.

Atas ialah kandungan terperinci Bagaimana untuk menentukan sama ada nilai berada dalam tatasusunan dalam php (4 kaedah). 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