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
DDDasal
2024-12-26 20:11:10643semak imbas

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;
}

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';

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!

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