buscar un valor en una matriz multidimensional y obtener su ruta en PHP
Esta es mi matriz:
<code>$array = array ( '1' => array( 'title' => 'Level1', 'nodes' => array( '11' => array('title' => 'sub1_company1'), '12' => array('title' => 'sub2_company1'), '13' => array( 'title' => 'sub3_company1', 'nodes' => array( '131' => array('title' => 'item1_sub3_company1'), '132' => array('title' => 'item2_sub3_company1'), ), ), ), ), '2' => array( 'title' => 'Level2', 'nodes' => array( '21' => array('title' => 'sub1_company2'), '22' => array('title' => 'sub2_company2'), ), ), '3' => array( 'title' => 'Level3', 'nodes' => array( '31' => array('title' => 'sub1_company3'), '32' => array( 'title' => 'sub2_company3', 'nodes' => array( '321' => array('title' => 'item1_sub2_company3'), '322' => array( 'title' => 'item2_sub2_company3', 'nodes' => array( '3221' => array('title' => 'item1_sub3_company3'), ), ), ), ), ), ), '4' => array('title' => 'Level4'),); </code>
Lo que necesito es encontrar sub2_company1 y obtener los títulos como una ruta de exploración.
Nivel1> sub2_company1
o si busco item1_sub3_company1 obtendré
Nivel1> sub3_company1> item1_sub3_company1
Lo que hice hasta ahora pero no está funcionando:
<code> function breadcrumb($array, $needle) { $path = array(); $array_iterator = new recursiveArrayIterator($array); $it = new recursiveIteratorIterator($array_iterator, RecursiveIteratorIterator::SELF_FIRST); foreach($it as $key => $value) { echo "$key: $value <br>"; if (!is_array($value)) { array_push($path, $value); } if ($value === $needle) { break; } } //$content = '<div id="breadcrumb">' . implode(' > ', $path) . '</div>'; return print_r($path, 1); } </code>
gracias