Здравствуйте. Перевожу сайты на PHP и там в шаблонизаторах используется такая конструкция. Как мне ее переделать в preg_replace_callback? Уже какие варианты только не перепробывал
$in["#\\[index:(.+?)\\](.*?)\\[/index\\]#ies"] = "indexShow('\\1', '\\2')";
$in["#\\[modules:(.+?):(.+?)](.*?)\\[/modules]#ies"] = "modulesShow('\\1', '\\2', '\\3')";
$in["#\\[guest](.*?)\\[/guest]#ies"] = "checkGuest('\\1')";
$in["#\\[user](.*?)\\[/user]#ies"] = "checkUser('\\1')";
$in["#\\[title:(.*?)]#ies"] = "\$this->preTitle('\\1');";
$in["#\\[open](.*?)\\[/open]#ies"] = "\$this->preOpen('\\1');";
$in["#\\[userinfo:(.*?)]#ies"] = "\$this->ustinf('\\1')";
$text = preg_replace(array_keys($in), array_values($in), $str);
Помогите пожалуйста передать из preg_replace в preg_replace_callback, уже разные варианты делал, не помогает.
Делаете так для php7:
$in["#\\[index:(.+?)\\](.*?)\\[/index\\]#is"] = funtion($matches) {return indexShow($matches[1], $matches[2]);};
...
$text = preg_replace_callback_array(array_keys($in), array_values($in), $str);
Современные инструменты для криптотрейдинга: как технологии помогают принимать решения
Апостиль в Лос-Анджелесе без лишних нервов и бумажной волокиты
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости