首頁 >後端開發 >php教程 >如何在PHP中高效搜尋多維數組?

如何在PHP中高效搜尋多維數組?

DDD
DDD原創
2024-12-26 20:11:10641瀏覽

How Can I Efficiently Search Multidimensional Arrays in PHP?

使用in_array() 搜尋多維數組

而in_array() 函數是檢查數組中值是否存在的便捷工具數組,但在處理具有多維結構的陣列時它就顯得不足了。要克服此限制,請考慮以下事項:

自訂遞歸函數

您可以使用像這樣的遞歸函數,而不是依賴 in_array() 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;
}

用法:

要使用in_array_r 函數,請提供其Needle(您要尋找的值)、haystack(多維數組)和可尋找選的嚴格參數(控制嚴格相等比較)。例如:

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

以上是如何在PHP中高效搜尋多維數組?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn