Ciao a tutti ho un problema che non riesco a risolvere.
Ho un struttura dati ad albero, e una funzione che mi restituisce i figli di un determinato nodo.

Vorrei fare una funzione ricorsiva la quale preso in input un'array e un nodo mi restituisce l'array riempito di tutti i suoi figli e figli dei figli.

Codice PHP:
public static function recurse($nodo$array){
    
$a CategoryCore::getChildren($nodo);  //restituisce un array multidimensionale con (anche) i figli del nodo

    
if(empty($a))   //Se non ha più figli
        
return;

    foreach (
$a as $key => $value) {
        
$array[] = $value['nodo'];
        
methods::recurse($value['nodo']);
    }

    return 
$array;

Il problema sostanzialmente è che questa funzione non mi restituisce tutti i figli ma solamnete i figli del nodo passatogli.