3v4l.org

run code in 300+ PHP versions simultaneously
<?php $data = ['a' => ['b' => ['c' => 1]]]; $it = new RecursiveIteratorIterator(new RecursiveArrayIterator($data)); $flat = $keys = []; foreach ($it as $node) { foreach (range(0, $it->getDepth()) as $depth) { $keys[] = $it->getSubIterator($depth)->key(); } $flat[ join('.', $keys) ] = $node; $keys = []; } var_dump($flat);

preferences:
29.54 ms | 402 KiB | 5 Q