Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bagaimana untuk menentukan sama ada nilai wujud dalam tatasusunan dalam php

Bagaimana untuk menentukan sama ada nilai wujud dalam tatasusunan dalam php

PHPz
PHPzasal
2023-04-20 10:11:39668semak imbas

Dalam pengaturcaraan PHP, ia adalah operasi yang sangat biasa untuk menentukan sama ada nilai wujud dalam tatasusunan. Artikel ini akan memperkenalkan tiga kaedah untuk mencapai fungsi ini.

Kaedah 1: Gunakan fungsi in_array

PHP menyediakan fungsi in_array, yang boleh menentukan sama ada nilai wujud dalam tatasusunan Jika ia wujud, ia mengembalikan BENAR, jika tidak ia mengembalikan FALSE. Sintaks fungsi ini adalah seperti berikut:

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

Antaranya, $needle mewakili nilai yang perlu disemak, $haystack mewakili tatasusunan sasaran dan $strict mewakili sama ada mod ketat didayakan lalai ialah FALSE, yang bermaksud mod ketat tidak didayakan.

Berikut ialah contoh menggunakan fungsi in_array untuk menentukan sama ada nilai wujud dalam tatasusunan:

<?php
$colors = array("red", "green", "blue");
if (in_array("green", $colors)) {
    echo "存在";
} else {
    echo "不存在";
}
?>

Hasil output ialah: wujud

Kaedah 2: Gunakan fungsi array_search

Fungsi array_search dalam PHP digunakan untuk mencari nilai dalam tatasusunan dan mengembalikan nama kunci. Jika nilai tiada dalam tatasusunan, mengembalikan FALSE. Sintaks fungsi ini adalah seperti berikut:

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

Antaranya, $needle mewakili nilai yang perlu disemak, $haystack mewakili tatasusunan sasaran dan $strict mewakili sama ada mod ketat didayakan lalai ialah FALSE, yang bermaksud mod ketat tidak didayakan.

Berikut ialah contoh menggunakan fungsi array_search untuk menentukan sama ada nilai wujud dalam tatasusunan:

<?php
$colors = array("red", "green", "blue");
$key = array_search("green", $colors);
if ($key !== false) {
    echo "存在";
} else {
    echo "不存在";
}
?>

Hasil output ialah: wujud

Nota: Apabila menggunakan fungsi array_search Apabila, anda perlu menentukan sama ada nilai pulangan adalah sama dengan FALSE, kerana adalah mungkin untuk mengembalikan 0, dan nama kunci yang sepadan dengan 0 juga palsu.

Kaedah 3: Gunakan fungsi isset

Fungsi isset dalam PHP digunakan untuk mengesan sama ada pembolehubah telah ditetapkan dan bukan NULL. Mengembalikan TRUE jika pembolehubah wujud dan bukan NULL, sebaliknya mengembalikan FALSE. Oleh kerana nilai utama yang tidak wujud dalam tatasusunan dianggap NULL, anda boleh menggunakan fungsi isset untuk menentukan sama ada nilai wujud dalam tatasusunan. Berikut ialah contoh menggunakan fungsi isset untuk menentukan sama ada nilai wujud dalam tatasusunan:

<?php
$colors = array("red", "green", "blue");
if (isset($colors[array_search("green", $colors)])) {
    echo "存在";
} else {
    echo "不存在";
}
?>

Hasil output ialah: wujud

Dalam contoh ini, fungsi carian_tatasusunan digunakan untuk mendapatkan nama kunci sepadan "hijau" dalam tatasusunan, dan kemudian gunakan fungsi isset untuk menentukan sama ada nilai kunci sudah wujud.

Antara ketiga-tiga kaedah ini, adalah disyorkan untuk menggunakan fungsi in_array. Kerana sintaksnya ringkas, mudah difahami dan tidak memerlukan pertimbangan pada nilai utama. Jika anda perlu mendapatkan nama kunci yang sepadan dengan nilai dalam tatasusunan, anda boleh menggunakan fungsi array_search. Walaupun fungsi isset juga boleh digunakan untuk menentukan sama ada nilai tertentu wujud dalam tatasusunan, ia biasanya digunakan untuk mengesan kewujudan pembolehubah dan tidak sesuai untuk mengesan nilai tatasusunan.

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