Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bagaimana untuk mengesan sama ada aksara wujud dalam tatasusunan dalam php? Analisis ringkas tiga kaedah

Bagaimana untuk mengesan sama ada aksara wujud dalam tatasusunan dalam php? Analisis ringkas tiga kaedah

PHPz
PHPzasal
2023-04-27 09:11:301236semak imbas

1. Prakata

Menentukan sama ada aksara wujud dalam tatasusunan ialah salah satu masalah yang sering kita hadapi semasa menulis atur cara dalam PHP. Masalah ini sangat mudah, tetapi terdapat banyak cara untuk menyelesaikannya dalam aplikasi sebenar kami. Dalam artikel ini, saya akan berkongsi tiga kaedah pelaksanaan untuk rujukan anda.

2. Kaedah 1: Gunakan fungsi in_array()

Fungsi in_array() ialah fungsi teras PHP dan boleh digunakan untuk mencari sama ada nilai wujud dalam tatasusunan. Format fungsi ini adalah seperti berikut:

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

di mana $needle mewakili nilai yang akan ditemui, dan $haystack mewakili Tatasusunan yang hendak dicari, $strict menunjukkan sama ada hendak menggunakan jenis perbandingan (lalainya ialah FALSE, yang bermaksud hanya nilai perbandingan digunakan).

Kita boleh menggunakan kod berikut untuk menentukan sama ada aksara wujud dalam tatasusunan:

$char = 'a';
$arr = array('a', 'b' , 'c', 'd');
if (in_array($char, $arr)) {

echo 'Exist';

} lain {

echo 'Not Exist';

}

di sini $char mewakili aksara yang akan ditemui dan $arr mewakili tatasusunan yang akan disemak. Jika hasil yang dikembalikan adalah BENAR, ini bermakna watak itu wujud dalam tatasusunan, jika tidak, ia tidak wujud.

3. Kaedah 2: Gunakan fungsi array_search()

fungsi array_search() ialah satu lagi fungsi teras PHP, yang boleh digunakan untuk mencari nilai yang diberikan dalam tatasusunan berjaya ditemui, Mengembalikan nama kunci. Format fungsi ini adalah seperti berikut:

carian_tatasusunan bercampur ( $needle bercampur , tatasusunan $timbunan jerami [, bool $strict = FALSE ] )

di mana $needle mewakili nilai yang akan ditemui, dan $haystack mewakili Tatasusunan yang hendak dicari, $strict menunjukkan sama ada hendak menggunakan jenis perbandingan (lalainya ialah FALSE, yang bermaksud hanya nilai perbandingan digunakan).

Kita boleh menggunakan kod berikut untuk menentukan sama ada aksara wujud dalam tatasusunan:

$char = 'a';
$arr = array('a', 'b' , 'c', 'd');
jika (array_search($char, $arr) !== false) {

echo 'Exist';

} lain {

echo 'Not Exist';

}

$char di sini mewakili aksara yang akan ditemui dan $arr mewakili tatasusunan untuk diperiksa. Jika hasil yang dikembalikan bukan PALSU, ini bermakna watak itu wujud dalam tatasusunan, jika tidak, ia tidak wujud.

4 Kaedah 3: Gunakan fungsi in_array() dan array_map()

Jika kita perlu menyemak sama ada rentetan wujud beberapa kali dalam tatasusunan dan perlu mengira bilangan kejadian, kita Anda boleh menggunakan fungsi in_array() bersama-sama dengan fungsi array_map() untuk mengendalikan ini. Fungsi array_map() ialah fungsi tatasusunan dalam PHP yang menggunakan fungsi panggil balik pada setiap elemen tatasusunan dan mengembalikan tatasusunan yang mengandungi elemen baharu. Format fungsi ini adalah seperti berikut:

array array_map ( boleh panggil $callback , array $array1 [, array $... ] )

di mana $callback mewakili panggilan balik untuk digunakan fungsi elemen tatasusunan, $array1 mewakili tatasusunan yang mana fungsi panggil balik akan digunakan.

Kita boleh menggunakan kod berikut untuk menentukan sama ada aksara wujud dalam tatasusunan dan mengira kejadiannya:

$char = 'a';
$arr = array('a' , 'b', 'c', 'd', 'a', 'a');
$count = count(array_filter(array_map(function ($value) use ($char) {

return ($value == $char) ? true : false;

}, $arr)));

gema 'Exist ' . $count . disemak tatasusunan. Gunakan fungsi array_map() untuk mengembalikan tatasusunan yang mengandungi benar atau salah, kemudian gunakan fungsi array_filter() untuk menapis nilai benar, dan akhirnya gunakan fungsi count() untuk mengira bilangan kejadian.

5. Rumusan

Ketiga-tiga kaedah di atas mempunyai kelebihan dan kelemahan tersendiri yang mana satu kaedah yang hendak dipilih perlu dinilai berdasarkan masalah sebenar. Dalam pengaturcaraan sebenar, kita perlu memilih penyelesaian yang optimum berdasarkan masalah khusus untuk meningkatkan kecekapan dan kebolehbacaan program. Tidak kira kaedah yang digunakan, kita perlu memberi perhatian kepada kebolehbacaan dan kebolehselenggaraan kod untuk memudahkan pengubahsuaian dan pengembangan kod pada masa hadapan.

Atas ialah kandungan terperinci Bagaimana untuk mengesan sama ada aksara wujud dalam tatasusunan dalam php? Analisis ringkas tiga 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