Achatar transparentemente uma matriz

Lendo esta perguntaMerge e agrupe por várias matrizes Tive a seguinte idéia: ao trabalhar com matrizes multiníveis, com possível repetição de chaves, seria prático ter uma função que iterasse uma matriz como plana, como

foreach(flatten($deepArray) as $key => $val)....

muitas idéias como escreverflatten()? Existe alguma solução padrão?

(Observe queflatten() não pode simplesmente retornar uma nova matriz devido à repetição de teclas

questionAnswers(2)

yourAnswerToTheQuestion