Rumah > pembangunan bahagian belakang > masalah PHP > Bagaimana untuk menentukan sama ada tatasusunan mengandungi elemen tertentu dalam PHP (5 kaedah)

Bagaimana untuk menentukan sama ada tatasusunan mengandungi elemen tertentu dalam PHP (5 kaedah)

PHPz
Lepaskan: 2023-04-18 14:34:47
asal
4829 orang telah melayarinya

Menentukan sama ada tatasusunan mengandungi elemen tertentu mungkin merupakan tugas yang sangat biasa dalam PHP. Dalam artikel ini, saya akan menerangkan beberapa cara untuk menentukan sama ada tatasusunan mengandungi elemen menggunakan PHP. Kaedah ini boleh membantu anda menyelesaikan masalah ini dengan mudah, sama ada anda seorang pemula atau pembangun PHP yang berpengalaman.

Saya akan mulakan dengan kaedah yang paling asas dan kemudian secara beransur-ansur memperkenalkan teknik yang lebih maju. Bergantung pada pengalaman dan keutamaan peribadi anda, anda bebas memilih kaedah yang sesuai untuk anda.

Kaedah 1: Gunakan fungsi in_array()

Apabila menentukan sama ada tatasusunan mengandungi elemen, kaedah yang paling biasa ialah menggunakan fungsi in_array(). Fungsi ini sangat mudah dan hanya memerlukan dua parameter: elemen untuk ditemui dan tatasusunan untuk ditemui.

Berikut ialah kod sampel menggunakan fungsi in_array():

$arr = array('apple', 'banana', 'orange', 'grape');
if (in_array('apple', $arr)) {
   echo '数组包含apple';
} else {
   echo '数组不包含apple';
}
Salin selepas log masuk

Jika tatasusunan mengandungi elemen yang anda cari, "array mengandungi epal" akan dikeluarkan.

Kaedah 2: Gunakan fungsi array_search()

Kaedah lain yang biasa digunakan ialah menggunakan fungsi array_search(). Fungsi ini serupa dengan fungsi in_array(), tetapi perbezaannya ialah ia bukan sahaja mengembalikan benar atau salah, tetapi kunci elemen dalam tatasusunan. Jika elemen tiada dalam tatasusunan, mengembalikan palsu.

Berikut ialah kod sampel menggunakan fungsi array_search():

$arr = array('apple', 'banana', 'orange', 'grape');
$search = array_search('apple', $arr);
if ($search !== FALSE) {
   echo '数组包含apple,位置为:'.$search;
} else {
   echo '数组不包含apple';
}
Salin selepas log masuk

Jika array mengandungi elemen yang anda cari, ia akan mengeluarkan "array contains apple at position: 0 " kerana 'epal' ialah elemen pertama dalam tatasusunan.

Kaedah 3: Gunakan fungsi in_array() dan array_keys()

Menggabungkan fungsi in_array() dan array_keys() juga merupakan kaedah yang mungkin. Fungsi array_keys() mengembalikan nilai semua kunci dalam tatasusunan.

Berikut ialah contoh kod menggunakan in_array() dan array_keys() fungsi:

$arr = array('apple', 'banana', 'orange', 'grape');
if (in_array('apple', $arr)) {
   $keys = array_keys($arr, 'apple');
   echo '数组包含apple,位置为:'.$keys[0];
} else {
   echo '数组不包含apple';
}
Salin selepas log masuk

Jika array mengandungi elemen yang anda cari, ia akan mengeluarkan "Array contains apple pada kedudukan: 0".

Kaedah 4: Gunakan gelung foreach

Menggunakan gelung foreach untuk melintasi tatasusunan dan mencari elemen yang ditentukan juga merupakan kaedah yang mungkin.

Berikut ialah kod sampel menggunakan gelung foreach:

$arr = array('apple', 'banana', 'orange', 'grape');
$bFound = false;
foreach ($arr as $key => $value) {
  if ($value == 'apple') {
  echo '数组包含apple,位置为:'.$key;
  $bFound = true;
  break;
}
}
if (!$bFound) {
  echo '数组不包含apple';
}
Salin selepas log masuk

Jika tatasusunan mengandungi elemen yang anda cari, "array mengandungi epal, kedudukan: 0" akan dikeluarkan.

Kaedah 5: Gunakan fungsi array_reduce()

Akhir sekali, saya akan memperkenalkan kaedah menggunakan fungsi array_reduce(). Fungsi ini "mengurangkan" semua elemen dalam tatasusunan menggunakan fungsi panggil balik, dan akhirnya mengembalikan nilai. Biasanya, kami menggunakan fungsi ini untuk menjumlahkan, mendarab atau mengira beberapa jenis penumpuk berbanding tatasusunan berangka.

Tetapi di sini, kita boleh menggunakannya untuk menentukan sama ada tatasusunan mengandungi elemen tertentu. Berikut ialah kod sampel menggunakan fungsi array_reduce():

$arr = array('apple', 'banana', 'orange', 'grape');
$found = array_reduce($arr, function($carry, $item){
   return $carry || $item == 'apple';
}, false);
if ($found) {
   echo '数组包含apple';
} else {
   echo '数组不包含apple';
}
Salin selepas log masuk

Jika tatasusunan mengandungi elemen yang anda cari, "array contains apple" akan dikeluarkan.

Kesimpulan

Tidak kira kaedah yang digunakan, selagi anda menguasai sintaks PHP asas dan konsep tatasusunan, anda boleh dengan mudah menentukan sama ada tatasusunan mengandungi elemen tertentu. Jika anda tidak pasti kaedah mana yang sesuai untuk anda, disyorkan untuk memilih dua kaedah yang paling biasa digunakan in_array() dan array_search().

Atas ialah kandungan terperinci Bagaimana untuk menentukan sama ada tatasusunan mengandungi elemen tertentu dalam PHP (5 kaedah). 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