Прежде всего, я хочу извиниться, если есть существующий поток, я много искал, но не смог найти решение.
Итак, у меня есть функция preg_replace_callback, которая заменяет определенные теги в строке на функцию.
Пример:
$object = preg_replace_callback('~{FUNC\s+(.+?)}(.+?){/FUNC}~is', function($matches) use ($replace)
{
list($condition, $function, $content) = $matches;
return $function($content);
}, $object);
Но когда я использую вложенный тег внутри другого тега, он выходит из строя
Пример:
{FUNC name_of_func}
text
text
text
{FUNC name_of_func2}text 2{/FUNC}
text
text
{/FUNC}
Я знаю, он находит первыйзакрывающий тег и вот в чем проблема, но я плохо с регулярным выражением, как это исправить, чтобы я мог использовать несколько вложенных тегов или вложенных тегов, если это возможно?