Голосование за лучший ответ
theadenter
Мудрец
(11387)
8 лет назад
Использовать новые функции, как предложено.
Либо изменить уровень вывода ошибок с E_ALL в E_ERROR в php.ini.
А если совсем лень - отыщите эти строчки в этих файлах и проставьте перед словом preg_replace, собаку. То есть должно выглядеть так: @preg_replace
xenon615
Мастер
(1316)
8 лет назад
цитата
Знаю. что preg_replace(): является устаревшим, и нужно использовать preg_replace_callback
это не правильное утверждение
просто вместо preg_replace() когда используешь модификатор "е" нужно использовать preg_replace_callback
в целом это означает что твоя джомла слишком стара для твоего ПХП ))
так что либо апгрейд джомлы, либо даунгрейд пхп, либо как советует theadenter
Появились ошибки:
Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/ox2281/htdocs/libraries/joomla/filter/input.php on line 652
Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/ox2281/htdocs/libraries/joomla/filter/input.php on line 654
строка 652: $source = preg_replace('/(\d+);/me', "utf8_encode(chr(\\1))", $source); // decimal notation
строка 654: $source = preg_replace('/([a-f0-9]+);/mei', "utf8_encode(chr(0x\\1))", $source); // hex notation
Сайт лежит. Вместо него крокозяблы.
Может подскажете, как исправить?
Знаю. что preg_replace(): является устаревшим, и нужно использовать preg_replace_callback, но не знаю как переписать приведенные строчки.