Rumah > pembangunan bahagian belakang > tutorial php > Bagaimanakah Saya Boleh Mencari Tatasusunan Berbilang Dimensi dengan Cekap dalam PHP?

Bagaimanakah Saya Boleh Mencari Tatasusunan Berbilang Dimensi dengan Cekap dalam PHP?

DDD
Lepaskan: 2024-12-26 20:11:10
asal
639 orang telah melayarinya

How Can I Efficiently Search Multidimensional Arrays in PHP?

Mencari Tatasusunan Berbilang Dimensi dengan in_array()

Manakala fungsi in_array() ialah alat mudah untuk menyemak kewujudan nilai dalam tatasusunan, ia gagal apabila berurusan dengan tatasusunan yang mempunyai struktur multidimensi. Untuk mengatasi had ini, pertimbangkan perkara berikut:

Fungsi Rekursif Tersuai

Daripada bergantung pada in_array(), anda boleh menggunakan fungsi rekursif seperti in_array_r:

function in_array_r($needle, $haystack, $strict = false) {
    foreach ($haystack as $item) {
        if (($strict ? $item === $needle : $item == $needle) || (is_array($item) && in_array_r($needle, $item, $strict))) {
            return true;
        }
    }

    return false;
}
Salin selepas log masuk

Penggunaan:

Untuk menggunakan fungsi in_array_r, sediakan ia dengan jarum (nilai yang anda cari), timbunan jerami (susunan berbilang dimensi), dan parameter ketat pilihan (mengawal perbandingan kesaksamaan yang ketat). Contohnya:

$b = array(array("Mac", "NT"), array("Irix", "Linux"));
echo in_array_r("Irix", $b) ? 'found' : 'not found';
Salin selepas log masuk

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mencari Tatasusunan Berbilang Dimensi dengan Cekap 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