Analisis fungsi biasa PHP: in_array()

WBOY
Lepaskan: 2023-06-20 06:04:01
asal
3905 orang telah melayarinya

Dalam PHP, fungsi in_array() ialah fungsi yang sangat biasa digunakan, yang boleh menentukan sama ada nilai wujud dalam tatasusunan. Dalam artikel ini, kami akan menyediakan analisis mendalam tentang fungsi in_array().

Sintaks fungsi in_array() adalah seperti berikut:

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

di mana $needle ialah Nilai untuk diambil, $haystack ialah tatasusunan sasaran, $strict menunjukkan sama ada untuk menggunakan mod ketat (iaitu, sama ada untuk mempertimbangkan jenis), lalai adalah FALSE.

Seterusnya, mari kita lihat contoh:

$fruits = array("apple", "banana", "orange");
if (in_array("apple", $fruits)) {
    echo "有苹果哦!";
}
Salin selepas log masuk

Keluaran kod ini ialah "Ada epal!" kerana "epal" wujud dalam tatasusunan $fruits.

Seterusnya, mari lihat beberapa situasi yang berbeza.

Kes 1: Untuk jenis nilai mudah, fungsi in_array() menggunakan mod santai secara lalai, iaitu jenis tidak dipertimbangkan. Contohnya:

$numbers = array(1, 2, 3, 4, 5);
if (in_array("2", $numbers)) { // 注意,这里的 2 是一个字符串
    echo "2 存在于数组中";
}
Salin selepas log masuk

Hasil keluaran kod ini juga akan menjadi "2 wujud dalam tatasusunan", walaupun "2" ialah rentetan, ia boleh dipadankan dengan jayanya.

Untuk menggunakan mod ketat, tetapkan parameter ketiga kepada BENAR. Contohnya:

$numbers = array(1, 2, 3, 4, 5);
if (in_array("2", $numbers, TRUE)) {
    echo "2 存在于数组中";
} else {
    echo "2 不是数组的元素";
}
Salin selepas log masuk

Output kod ini ialah "2 bukan elemen tatasusunan" kerana dalam mod ketat, "2" dan 2 adalah jenis yang berbeza dan tidak boleh dipadankan dengan jayanya.

Kes 2: Untuk nilai jenis komposit (contohnya, tatasusunan), fungsi in_array() juga menggunakan mod santai secara lalai, iaitu, selagi salah satu elemen berjaya dipadankan, keseluruhan nilai akan dianggap sebagai perlawanan yang berjaya. Contohnya:

$person1 = array("name" => "John", "age" => 30);
$person2 = array("name" => "Mary", "age" => 25);
$people = array($person1, $person2);
if (in_array(array("name" => "John"), $people)) {
    echo "有一个人叫 John!";
}
Salin selepas log masuk

Keluaran kod ini ialah "Ada orang bernama John kerana elemen "nama" $person1 berjaya dipadankan.

Kes 3: Apabila nilai dalam tatasusunan sasaran ialah NULL, fungsi in_array() tidak menganggap bahawa nilai itu tidak wujud. Contohnya:

$values = array("a", "b", NULL);
if (in_array(NULL, $values)) {
    echo "NULL 存在于数组中";
}
Salin selepas log masuk

Output kod ini ialah "NULL wujud dalam tatasusunan".

Ringkasnya, fungsi in_array() ialah fungsi yang sangat praktikal dan digunakan secara meluas. Apabila anda perlu menentukan sama ada nilai wujud dalam tatasusunan semasa pembangunan, anda boleh memberi keutamaan untuk menggunakan fungsi ini. Pada masa yang sama, berhati-hati untuk menggunakan mod ketat untuk mengelakkan masalah tidak sepadan jenis.

Atas ialah kandungan terperinci Analisis fungsi biasa PHP: in_array(). Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
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