私は再帰的なラムダ関数を使って配列を平坦化しようとしていましたが、その周りに頭を浮かべているようです。単純な配列を再帰的なラムダ関数で平坦化しない
$test = function($a, $b) use (&$test) {
if (! count($a)) return $b;
$b[array_shift($a)] = []; // Missing logic here.
return $test($a, $b);
};
$newArr = $test([0, 1, 2], [] );
echo "<pre>";
print_r($newArr);
echo "</pre>";
コードですが、私は何をすべきかは考えていない「//ここに行方不明のロジックを。」部。
私は、この再帰的なラムダ関数が
[0, 1, 2]
に変換したい:あなたは2番目の引数を必要としない
Array
(
[0] => Array
(
[1] => Array
(
[2] => test
)
)
)
あなたに'dはexにする必要があるまさに「//ここに欠けているロジック」が何をすべきかを明白にしてください。 "test"がどこにも指定されていないとき、 '[0、1、2]'から '[0 => [1 => [2 => 'test']]]' – cHao