Помогите исправить ошибку в func.php в версии 3.2.2

236
.
Роман
ошибка выдает Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/p/pdnrmak5/pdnrmak5.bget.ru/public_html/incfiles/func.php on line 533
сам код
function tags($var = '') {
    ////////////////////////////////////////////////////////////
    // Обработка ссылок и тэгов BBCODE в тексте               //
    ////////////////////////////////////////////////////////////
    $var = preg_replace(array('#\[php\](.*?)\[\/php\]#se'), array("''.highlight('$1').''"), str_replace("]\n", "]", $var));
    $var = preg_replace('#\[b\](.*?)\[/b\]#si', '<span style="font-weight: bold;">\1</span>', $var);
    $var = preg_replace('#\[i\](.*?)\[/i\]#si', '<span style="font-style:italic;">\1</span>', $var);
    $var = preg_replace('#\[u\](.*?)\[/u\]#si', '<span style="text-decoration:underline;">\1</span>', $var);
    $var = preg_replace('#\[s\](.*?)\[/s\]#si', '<span style="text-decoration: line-through;">\1</span>', $var);
    $var = preg_replace('#\[red\](.*?)\[/red\]#si', '<span style="color:red">\1</span>', $var);
    $var = preg_replace('#\[green\](.*?)\[/green\]#si', '<span style="color:green">\1</span>', $var);
    $var = preg_replace('#\[blue\](.*?)\[/blue\]#si', '<span style="color:blue">\1</span>', $var);
    $var = preg_replace('#\[c\](.*?)\[/c\]#si', '<div class="quote">\1</div>', $var);
    $var = preg_replace_callback('~\\[url=(https?://.+?)\\](.+?)\\[/url\\]|(https?://(www.)?[0-9a-z\.-]+\.[0-9a-z]{2,6}[0-9a-zA-Z/\?\.\~&amp;_=/%-:#]*)~', 'url_replace', $var);
    return $var;
}

Заранее благодарен!!!
Версия РНР 5.6
.
JohnCMS
Выбирай пых 5.3
.
Jesk, пока нет возможности выбрать ниже рнр
.
╭∩╮ (`-`) ╭∩╮
# Роман (01.03.2017 / 14:08)
Jesk, пока нет возможности выбрать ниже рнр
Версия 3.2.2 писалась очень давно и не предназначена для новых версий РНР.
Кроме этой функции там еще полно того, что давно уже устарело. Для этого мы и выпускаем новые версии движка, что там все по возможности исправлено.

Для нормального решения, или как правильно сказал выше Jesk, надо установить РНР 5.2 или 5.3, но лучше всего установить обновленную версию JohnCMS
.
Роман
AlkatraZ, я очень признателен за совет и понимаю почему он последовал,но я останусь на этой версии,смена на 5.2 не помогла
Хотелось бы решить данный вопрос
.
╭∩╮ (`-`) ╭∩╮
# Роман (01.03.2017 / 14:25)
,но я останусь на этой версии
Можно узнать почему?
.
я начинающий "ковырятель кода",мне более понятен код в тройке,на сайте стит много скриптов по тройку,переписать сам пока не могу к сожалению,просить кого то не хочу(есть цель самому разобраться,как переписать все на версию выше-даже еще не смотрел).В краце такая вот петрушка у меня
.
как я понимаю нужно переписать строчку с фильтрацией ссылок,а вот знаний пока не хватает
.
Кадило крутится, лавэха мутится
# Роман (01.03.2017 / 15:34)
как я понимаю нужно переписать строчку с фильтрацией ссылок,а вот знаний пока не хватает
Посмотри как это сделано в версиях поновее. Например в 6 версии и сделай так же. Там код очень похож будет.
.
(\/)____o_O____(\/)
Роман, сама ошибка ругается на модификатор е в регулярке, посмотри другую регулярку в новой версии, так как эту проблему уже решили, например в 5 или 6 версии, там код почти как в тройке, только мультиязык ещё может спутать в коде
Всего: 12