Хм.. Не работает.
Вообщем, я это уже реализовал чуть иначе:
PHP код:
preg_match_all("/<%-([A-z0-9]*?)-%>/i", $template, $output);
foreach ($output[1] as $value) {
if (!isset($$value)) {
$template = str_replace("<%-$value-%>", "<b>Invalid Variable '$value'</b>", $template);
} else {
$template = str_replace("<%-$value-%>", $$value, $template);
}
}
Только вот почему здесь preg match all возвращает пустой индекс 0, а не индекс 1?