Bagaimana untuk menentukan sama ada tatasusunan mengandungi nilai tertentu dalam php

PHPz
Lepaskan: 2023-04-19 09:37:56
asal
637 orang telah melayarinya

Dalam pengaturcaraan PHP, adalah keperluan yang sangat biasa untuk menentukan sama ada tatasusunan mengandungi elemen tertentu. Artikel ini akan memperkenalkan pelbagai kaedah penghakiman, serta kelebihan, keburukan dan senario yang boleh digunakan.

  1. fungsi in_array

Fungsi in_array terbina dalam PHP boleh digunakan untuk menentukan sama ada nilai wujud dalam tatasusunan. Sintaks fungsi ini adalah seperti berikut:

bool in_array (mixed $needle, array $haystack [, bool $strict = FALSE ])
Salin selepas log masuk

di mana $needle mewakili nilai yang akan ditemui dan $haystack mewakili tatasusunan untuk dicari. Mengembalikan benar jika ditemui, palsu sebaliknya. Parameter ketat menunjukkan sama ada untuk mendayakan semakan jenis Lalai adalah palsu, yang bermaksud hanya menyemak sama ada nilai elemen adalah sama dan tidak menyemak sama ada jenis adalah sama.

Kod sampel:

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

Kod ini akan mengeluarkan: Tatasusunan mengandungi pisang.

fungsi in_array sesuai untuk mencari elemen dalam tatasusunan biasa.

  1. fungsi array_key_exists

fungsi array_key_exists boleh digunakan untuk mencari sama ada kunci wujud dalam tatasusunan bersekutu. Sintaksnya adalah seperti berikut:

bool array_key_exists (mixed $key, array $array )
Salin selepas log masuk

di mana $key mewakili kunci untuk ditemui dan $array mewakili tatasusunan bersekutu untuk dicari. Mengembalikan benar jika ditemui, palsu sebaliknya.

Kod sampel:

$age = array('Peter' => 35, 'John' => 40, 'Mary' => 25);
if (array_key_exists('Mary', $age)) {
    echo '数组中包含键 Mary';
} else {
    echo '数组中不包含键 Mary';
}
Salin selepas log masuk

Kod ini akan mengeluarkan: Tatasusunan mengandungi kunci Mary.

fungsi array_key_exists sesuai untuk mencari sama ada kunci wujud dalam tatasusunan bersekutu.

  1. fungsi isset

Jika nilai elemen dalam tatasusunan ialah NULL, kedua-dua fungsi in_array dan array_key_exists akan kembali palsu. Pada masa ini, anda boleh menggunakan fungsi isset untuk menilai. Sintaksnya adalah seperti berikut:

bool isset ( mixed $var [, mixed $... ] )
Salin selepas log masuk

Antaranya, $var mewakili pembolehubah atau elemen tatasusunan untuk dinilai. Mengembalikan benar jika pembolehubah wujud dan bukan NULL, sebaliknya palsu.

Kod sampel:

$person = array('name' => 'Tom', 'age' => 20, 'email' => NULL);
if (isset($person['email'])) {
    echo '数组中包含键 email';
} else {
    echo '数组中不包含键 email';
}
Salin selepas log masuk

Kod ini akan mengeluarkan: Tatasusunan mengandungi e-mel utama.

Fungsi isset sesuai untuk menentukan sama ada pembolehubah atau elemen tatasusunan wujud dan bukan NULL.

  1. fungsi array_search

fungsi array_search boleh mencari nilai dalam tatasusunan dan mengembalikan kunci sepadannya. Sintaksnya adalah seperti berikut:

mixed array_search ( mixed $needle , array $haystack [, bool $strict = false ] )
Salin selepas log masuk

di mana $needle mewakili nilai yang akan ditemui dan $haystack mewakili tatasusunan untuk dicari. Jika carian berjaya, kunci yang sepadan dengan elemen dikembalikan, jika tidak palsu dikembalikan. Parameter yang ketat menunjukkan sama ada untuk mendayakan semakan jenis, dan lalainya adalah palsu.

Kod sampel:

$fruits = array('apple', 'banana', 'orange');
$key = array_search('banana', $fruits);
if (false !== $key) {
    echo '数组中包含 banana,其键为:' . $key;
} else {
    echo '数组中不包含 banana';
}
Salin selepas log masuk

Kod ini akan mengeluarkan: Tatasusunan mengandungi pisang, dan kuncinya ialah: 1.

Fungsi carian_array sesuai untuk mencari kunci yang sepadan dengan nilai dalam tatasusunan.

  1. Fungsi tersuai

Jika fungsi di atas tidak dapat memenuhi keperluan, anda boleh menyesuaikan fungsi penghakiman mengikut situasi sebenar. Sebagai contoh, fungsi berikut digunakan untuk menentukan sama ada tatasusunan mengandungi nilai tertentu:

function in_array_ex($needle, $haystack) {
    foreach ($haystack as $value) {
        if ($value === $needle) {
            return true;
        }
    }
    return false;
}
Salin selepas log masuk

Fungsi ini menggunakan gelung foreach untuk melintasi tatasusunan dan membandingkan satu demi satu sama ada nilai elemen tatasusunan adalah sama dengan nilai yang akan ditemui. Mengembalikan benar jika ditemui, palsu sebaliknya.

Kod sampel:

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

Kod ini akan mengeluarkan: Tatasusunan mengandungi pisang.

Fungsi tersuai sesuai untuk keperluan pertimbangan khusus dan mempunyai fleksibiliti dan kebolehgunaan yang tinggi.

Ringkasnya, untuk menentukan sama ada tatasusunan mengandungi elemen, anda boleh menggunakan tatasusunan terbina dalam PHP, array_key_exists, isset, fungsi carian_tatasusunan atau anda boleh menyesuaikan fungsi penghakiman mengikut keperluan sebenar. Memilih kaedah pertimbangan yang sesuai untuk senario boleh meningkatkan kecekapan dan kebolehselenggaraan program.

Atas ialah kandungan terperinci Bagaimana untuk menentukan sama ada tatasusunan mengandungi nilai tertentu dalam php. 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