如何透過php用程式碼實作遞歸取得一個陣列中指定key的值

jacklove
發布: 2023-03-30 19:12:01
原創
4216 人瀏覽過

在php中常會遇到要取得一個陣列中的key值,所以這篇文章將會講解其相關知識。

/**
 * 递归获取一个数组中指定key的值
 * @param $array
 * @param $keys
 * @param string $delimiter
 * @return mixed
 */
function get_deep_value($array, $keys, $delimiter = '.')
{
    $keys = explode($delimiter, $keys);
    $key = array_shift($keys);
    if (sizeof($keys) > 0 && isset($array[$key])) {
        return get_deep_value($array[$key], implode($delimiter, $keys), $delimiter);
    } else {
        return $array[$key] ?? null;
    }
}
 
$a = [
    'a' => [
        'b' => 'error',
        'c' => [
            'd' => [
                'e' => [
                    'f' => 'ok',
                ]
            ]
        ]
    ]
]; 
var_dump(get_deep_value($a, 'a.c.d.e.f'));
/**
 * 输出:
 * string(2) "ok"
 */
var_dump(get_deep_value($a, 'a.b'));
/**
 * 输出:
 * string(5) "error"
 */
var_dump(get_deep_value($a, 'a.b.c'));
/**
 * 输出:
 * NULL
 */
登入後複製

本篇列舉了透過php用程式碼實現遞迴來取得一個陣列中指定key的值的相關方法,更多相關知識請關注php中文網。

相關推薦:

透過PHP實作讀取一個1G的檔案大小

講解PHP類別初始化功能碼

解說PHP物件導向對象,PHP繼承相關程式碼

#

以上是如何透過php用程式碼實作遞歸取得一個陣列中指定key的值的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板