Mehrdimensionale Array-Iteration

Angenommen, Sie haben das folgende Array:

$nodes = array(
    "parent node",
    "parent node",
    array(
        "child node",
        "child node",
        array(
            "grand child node",
            "grand child node")));

Wie würden Sie es in eine XML-Zeichenfolge umwandeln, damit es so aussieht:

<node>
    <node>parent node</node>
    <node>parent node</node>
    <node>
        <node>child node</node>
        <node>child node</node>
        <node>
            <node>grand child node</node>
            <node>grand child node</node>
        </node>
    </node>
</node>

Eine Möglichkeit wäre eine rekursive Methode wie:

function traverse($nodes)
{
    echo "<node>";

    foreach($nodes as $node)
    {
        if(is_array($node))
        {
            traverse($node);
        }
        else
        {
            echo "<node>$node</node>";
        }
    }

    echo "</node>";
}

traverse($nodes);

Ich suche jedoch nach einem Ansatz, der Iteration verwendet.

Antworten auf die Frage(2)

Ihre Antwort auf die Frage