Heim  >  Artikel  >  Backend-Entwicklung  >  So verwenden Sie Code, um über PHP rekursiv den Wert eines angegebenen Schlüssels in einem Array abzurufen

So verwenden Sie Code, um über PHP rekursiv den Wert eines angegebenen Schlüssels in einem Array abzurufen

jacklove
jackloveOriginal
2018-06-08 14:33:244157Durchsuche

In PHP müssen wir häufig den Schlüsselwert in einem Array abrufen, daher werden in diesem Artikel die entsprechenden Kenntnisse erläutert.

/**
 * 递归获取一个数组中指定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
 */

In diesem Artikel werden die relevanten Methoden zum rekursiven Abrufen des Werts eines bestimmten Schlüssels in einem Array über PHP-Code aufgeführt. Weitere Informationen zu diesem Thema finden Sie auf der chinesischen PHP-Website.

Verwandte Empfehlungen:

Lesen einer 1G-Dateigröße über PHP

Erläutern Sie den PHP-Klasseninitialisierungsfunktionscode

Erklären Sie den objektorientierten PHP-Code mit Bezug zur PHP-Vererbung

Das obige ist der detaillierte Inhalt vonSo verwenden Sie Code, um über PHP rekursiv den Wert eines angegebenen Schlüssels in einem Array abzurufen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn