Dopo due ore di grattacapi e googling - sono bloccato!PHP - Errore quando si restituisce un array da una funzione ricorsiva
Come per il titolo, sto provando a restituire un array che si costruisce man mano che la funzione scorre. Voglio solo restituire la variabile di matrice sul else tuttavia non coopererà. Ritorna semplicemente come vuoto dalla funzione, tuttavia nel resto posso stampare e mostrare come previsto. Semplicemente non restituirà la matrice nella variabile $ open_array. Qualsiasi idea (o abuso) sarebbe molto apprezzata!
function find_parent($number, $open = false) {
if(isset($other_variable[$number])) {
foreach($other_variable[$number] as $val) {
$open[$val->id] = [$val->id;
$open = find_parent([$val->id, $open);
}
}
else {
return $open;
}
}
$open_array = find_parent($number);
print_r($open_array);
Non vedo '$ other_variable' in via di definizione del perimetro della funzione. – NullUserException
Anche il '[$ val-> id' non ha una sintassi valida. Funziona anche questo? – NullUserException
Cosa? Non usi la ricorsione per costruire array? Da che pianeta vieni, moronia? –