2017-11-12 26 views
0

多次元配列()を持っていて、それを文字列に「線形化」したい。だから私は、この再帰関数を試してみてください。配列のPHP再帰関数

function RecursiveFunction($TheArray){ 
    foreach($TheArray as $key => $value){ 
     if(is_array($value)){ 
      $RecursiveOutput.="(".$key.")"; 
      RecursiveFunction($value); //-->this does't seem to work 
     } else { 
      $RecursiveOutput.="(".$value.")"; 
     } 
    } 
    return $RecursiveOutput; 
} 
echo RecursiveFunction($MyArray); 

しかし、私は、配列の最初のレベルからキーを取得しています:再帰的なリコールが動作するようには思えません。誰も問題を見つけることができますか?

+2

実行する必要がある内部関数呼び出しの戻り値を選択しません。 – 1stthomas

+0

'$ RecursiveOutput'を返していますが、戻り値をキャッチしていません。 –

+1

この '$ RecursiveOutput。="( "。$ key。") "。"( "。" RecursiveFunction($ value)。 ")"; ' –

答えて

1

$RecursiveOutputを返していますが、戻り値をキャッチしていません。試してください

$RecursiveOutput .= "(". $key .")(". RecursiveFunction($value) .")";