@s_katala

Как заменить preg_replace php 7.1?

Друзья, как переписать под php 7.1
$this->copy_template = preg_replace("#\\{translate=(.+?)\\}#ies", "\$this->load_lang('\\1')", $this->copy_template);

Выдает ошибку
Warning: preg_replace:)( The /e modifier is no longer supported, use preg_replace_callback instead in
Если меняю preg_replace на preg_replace_callback
Ошибка
Warning: preg_replace_callback(): Requires argument 2, '$this->load_lang('\1')', to be a valid callback in
  • Вопрос задан
  • 393 просмотра
Решения вопроса 1
Immortal_pony
@Immortal_pony Куратор тега PHP
$this->copy_template = preg_replace_callback("#\\{translate=(.+?)\\}#is", function($matches) { 
    $this->load_lang($matches[1]); 
}, $this->copy_template);
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы