« Back to Index

Loop recursively through a multi-level array using the SPL (Standard PHP Library) RecursiveArrayIterator

View original Gist on GitHub

Array Iterator Navigation.php

<?php
    $multilevelArray = array(
        "a" => array(
            "i"   => "aa",
            "ii"  => "bb",
            "url" => "http://www.integralist.co.uk/",
            "iii" => "cc"
        ),
        "b"   => "c",
        "url" => "http://www.github.com/"
    );
    $counter = 0;
    $array_obj = new RecursiveIteratorIterator(new RecursiveArrayIterator($multilevelArray));

    foreach($array_obj as $key => $value) {
        if ($key == 'url') {
            $counter++;
        }
    }

    echo $counter; // => 2
?>