Para empezar el arreglo no debe ser asociativo y tiene que estar ordenado sin saltear numeros ni nada raro. (o sea los indices. 0 1 2 3 4 5 y asi)
de lo contrario podes usar array_values() antes y te extrae los valores.
Código PHP:
Ver originalpublic mostrarCategoria($arreglo, $i = 0){
echo $arreglo[$i]['name'];
mostrarCategoria($arreglo['children'], 0);
mostrarCategoria($arreglo, [$i + 1]);
}
}
no lo probé pero algo como eso creo que debería funcionar