/** * @ignore * * @param array $ret Return value * @param array $Tree Tree segment * @param string $childrenId Children key in Element array * @param string $levelId A key to set with element's depth level value * * @author cloud * @access public */ protected static function _Tree2Line(&$ret, &$Tree, $childrenId, $levelId, $Level = 0) { foreach (array_keys($Tree) as $i) { $ret[$i] = $Tree[$i]; unset($ret[$i][$childrenId]); $ret[$i][$levelId] = $Level; if (isset($Tree[$i][$childrenId])) { Oops_Utils::_Tree2Line($ret, $Tree[$i][$childrenId], $childrenId, $levelId, $Level + 1); } } }