Also ich würde gerne in folgendes mit Regulären Ausdrücken umbasteln:
Das hier ist der Anfangstring dieser soll nun zu folgendem werden:
Ziel String:
Hat da irgendjemand eine Idee wie ich das Umsetzen könnte bin hier im Forum berreits auf diesen Beitrag gestoßen:
http://www.php-resource.de/forum/sho...threadid=45908
allerdings ist es mir nicht gelungen den Code irgendwie so umzuschreiben, dass er für mich funzt. Hier mal mein Ansatzt:
Das hier ist der Anfangstring dieser soll nun zu folgendem werden:
PHP-Code:
{loop=$categories name=first_level}
{loop=$first_level name=second_level}
....
{/loop}
{/loop}
...
{loop=$names name=$namen}
.....
{/loop}
PHP-Code:
<?php foreach( $categories_name as $first_level ) { ?>
<?php foreach( $first_level as $second_level ) { ?>
....
<?php } ?>
<?php } ?>
<?php foreach( $names as $name ) { ?>
....
<?php } ?>
http://www.php-resource.de/forum/sho...threadid=45908
allerdings ist es mir nicht gelungen den Code irgendwie so umzuschreiben, dass er für mich funzt. Hier mal mein Ansatzt:
PHP-Code:
function parse_loop( $tpl, $level = 1) {
$pattern = '#\{loop=\$(.+?) name=(.+?)\}((([^\[]*)|(?R))*)\{/loop\}#isUe';
$replacement = "<?php foreach( \$$1 as \$$2 ) { echo \".$this->parse_loop('\\3', ".($level+1).").\" ?>";
return preg_replace ($pattern, $replacement, $tpl);
}
Kommentar