Code-Snipplet: Pfadzugriff auf mehrdimensionale Arrays

Da mir die Tastaturakrobatik beim Zugriff auf verschachtelte Arrays mächtig auf den Zünder geht, bin ich dazu übergegangen, mir eine Funktion zu schreiben die mir den Zugriff wie auf einen Pfad ermöglicht.

Viel zu erklären ist daran eigentlich nicht, schätze ich.

/**
 *
 * @param string $route
 * @param array $array
 * @param mixed $value
 * @param string $separator
 * @return mixed
 */
function array_route($route, &$array, $value=null, $separator='.')
{
    $nodes = explode($separator, trim($route, $separator));
    $current = & $array;
    while (null !== ($index = array_shift($nodes)))
    {
        if (is_null($value))
        {
            if (!isset($current[$index]))
                return null;
        }
        else
        {
            $current[$index] = null;
        }
        $current = & $current[$index];
    }
    if (!is_null($value))
        $current = $value;
    return $current;

}

Wer dennoch Fragen hat, ist herzlich eingeladen die Kommentarfunktion zu benutzen.

Zuletzt gefunden unter folgenden Begriffen:

Hinterlasse einen Kommentar

Ihre E-Mail Addresse wird niemals veröffentlicht oder weitergegeben. Pflichtfelder sind gekennzeichnet.

Folgende HTML Tags und Attribute können verwendet werden: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>