Не нравятся результаты поиска? Попробуйте другой поиск!
DLE FAQ » Все вопросы » Общие вопросы по PHP » Как в DLE исправить Deprecated: preg_replace(): The /e modifier is deprecated ?

Как в DLE исправить Deprecated: preg_replace(): The /e modifier is deprecated ?


     12.08.2020    Deprecated, preg_replace(), ошибка, модификатор, php    Общие вопросы по PHP, Модули    319

вопрос
Доброго времени суток.
Помогите пожалуйста исправить следующую ошибку на сайте:
Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/u111111/public_html/engine/photo/photo_nucleus/inc/flash_al.php on line 122

Ошибка появляется при перелистывании альбомов.
Движок DLE 12.0, версия PHP 5.6, модуль "Фотоальбомы".
Привожу кусок кода в строках 122-126:
$html_ = preg_replace ( "#%ICON AID=([0-9]+?)%#ies", "parse_icons(\\1)", $html_ );

	}else{
		$html_ = preg_replace ( "#%ICON AID=([0-9]+?)%#ies", '', $html_ );
	}

Ответа пока нет


2 комментария

TeraMoune
Эксперт

TeraMoune - 13 августа 2020 01:13 -

модификатор e устарел

dj-avtosh
PHP-developer

dj-avtosh - 13 августа 2020 09:36 -

$html_ = preg_replace ( "#%ICON AID=([0-9]+?)%#ies", "parse_icons(\1)", $html_ );

	}else{
		$html_ = preg_replace ( "#%ICON AID=([0-9]+?)%#ies", '', $html_ );
	}


заменить на

$html_ = preg_replace_callback ( "#%ICON AID=([0-9]+?)%#is", function($matches){
    return parse_icons($matches[1]);
}, $html_ );

	}else{
		$html_ = preg_replace_callback ( "#%ICON AID=([0-9]+?)%#is", function($matches){
    return parse_icons($matches[1]);
}, $html_ );
	}

ЯД: 41001679231462
Заказы в telegram (ремонт модулей, оптимизация нагрузок и т.п.): @blob42
В телегу писать сразу задачу и бюджет.

Чтобы комментировать - войдите или зарегистрируйтесь на сайте

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

наверх