Rumah > pembangunan bahagian belakang > masalah PHP > PHP menentukan sama ada ia wujud dalam tatasusunan

PHP menentukan sama ada ia wujud dalam tatasusunan

WBOY
Lepaskan: 2023-05-06 11:53:07
asal
475 orang telah melayarinya

Dalam pembangunan PHP, kita sering menghadapi situasi di mana kita perlu menentukan sama ada elemen wujud dalam tatasusunan Dalam kes ini, kita biasanya menggunakan fungsi in_array() atau fungsi array_search(). Di bawah ini kami akan memperkenalkan penggunaan dan perbezaan kedua-dua fungsi ini secara terperinci.

1. Fungsi in_array()

Fungsi in_array() ialah fungsi yang biasa digunakan dalam PHP untuk menentukan sama ada elemen wujud dalam tatasusunan Ia digunakan seperti berikut:

bool in_array(mixed $needle, array $haystack [, bool $strict]);

Antaranya, $needle mewakili elemen yang akan ditemui, $hystack mewakili array yang akan ditemui, $strict mewakili sama ada untuk membandingkan secara kongruen, Nilai pulangannya ialah nilai Boolean.

Kod sampel adalah seperti berikut:

$fruits = array("apple", "banana", "orange", "tomato");

if (in_array("apple", $fruits)) {
    echo "有苹果!";
} else {
    echo "没有苹果。";
}
Salin selepas log masuk

Hasil output ialah "Ada epal!".

2. Fungsi array_search()

Fungsi array_search() mempunyai fungsi yang serupa dengan fungsi in_array() dan juga boleh digunakan untuk mencari sama ada unsur wujud dalam tatasusunan. Tidak seperti fungsi in_array(), fungsi array_search() mengembalikan subskrip elemen atau false.

Fungsi array_search() digunakan seperti berikut:

mixed array_search(mixed $needle, array $haystack [, bool $strict]);

Antaranya, $ needle bermaksud Elemen yang hendak dicari, $haystack mewakili tatasusunan yang hendak dicari, dan $strict mewakili sama ada hendak membandingkan secara kongruen.

Kod sampel adalah seperti berikut:

$fruits = array("apple", "banana", "orange", "tomato");

$key = array_search("orange", $fruits);

if ($key !== false) {
    echo "'orange' 的下标是: " . $key;
} else {
    echo "'orange' 不存在!";
}
Salin selepas log masuk

Hasil output ialah "Subskrip 'oren' ialah: 2".

3. Perbezaan antara fungsi in_array() dan array_search() fungsi

Walaupun fungsi in_array() dan array_search() mempunyai fungsi yang sama dalam menentukan sama ada sesuatu elemen wujud dalam tatasusunan, mereka Kedua-duanya masih mempunyai perbezaan berikut:

  1. Nilai pulangan adalah berbeza: in_array() mengembalikan nilai Boolean, array_search() mengembalikan subskrip elemen atau palsu.
  2. Kaedah perbandingan adalah berbeza: fungsi in_array() hanya membandingkan nilai elemen dan fungsi array_search() boleh membandingkan kedua-dua kunci dan nilai elemen.
  3. Sekatan penggunaan adalah berbeza: fungsi array_search() hanya boleh digunakan untuk tatasusunan satu dimensi, manakala fungsi in_array() boleh digunakan untuk tatasusunan berbilang dimensi.

4 Pelbagai cara untuk menentukan sama ada elemen wujud dalam tatasusunan

Selain fungsi in_array() dan array_search(), terdapat cara lain untuk menentukan sama ada sesuatu. elemen wujud dalam tatasusunan, seperti menggunakan fungsi isset() dan fungsi array_key_exists().

  1. Gunakan fungsi isset()

fungsi isset() boleh digunakan untuk menentukan sama ada unsur wujud dalam tatasusunan Kaedah penggunaan adalah seperti berikut:

$fruits = array("apple", "banana", "orange", "tomato");

if (isset($fruits[2])) {
    echo "'orange' 存在!";
} else {
    echo "'orange' 不存在!";
}
Salin selepas log masuk

Outputnya ialah "'oren' wujud!".

  1. Gunakan fungsi array_key_exists()

fungsi array_key_exists() juga boleh digunakan untuk menentukan sama ada unsur wujud dalam tatasusunan Kaedah penggunaan adalah seperti berikut:

$fruits = array("apple", "banana", "orange", "tomato");

if (array_key_exists(2, $fruits)) {
    echo "'orange' 存在!";
} else {
    echo "'orange' 不存在!";
}
Salin selepas log masuk

Keluarannya ialah "'oren' wujud!".

Tidak seperti fungsi isset() yang hanya boleh digunakan untuk menentukan sama ada nilai tatasusunan wujud atau kosong, fungsi array_key_exists() boleh digunakan untuk menentukan sama ada kunci tatasusunan wujud.

Kesimpulan

Melalui pengenalan di atas, kita dapat melihat bahawa dalam pembangunan PHP, tidak sukar untuk menentukan sama ada unsur wujud dalam tatasusunan Kita boleh menggunakan fungsi in_array(), array_search ( ) fungsi, isset() fungsi atau array_key_exists() fungsi, dsb. untuk mencapai ini. Kaedah mana yang hendak digunakan secara khusus, kita perlu memilih kaedah yang berbeza mengikut situasi yang berbeza untuk mencapai hasil yang terbaik.

Atas ialah kandungan terperinci PHP menentukan sama ada ia wujud dalam tatasusunan. 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