deprecated function eregi is deprecated in

Deprecated: function is deprecated in – ошибка, связанная с использованием устаревших функций в новых версиях PHP. Эти функции больше не будут использованы в языке, и их следует заменить аналогами. Касается это пользователей PHP 5.3 и выше.

Давайте разберемся, что делать дальше.

Deprecated: Function ereg() is deprecated in

Функция для работы с регулярными выражениями ereg() устарела. Вместо неё следует использовать аналогичную функцию preg_match()

Deprecated: Function eregi() is deprecated in

Как видите, в примере выше подставлен параметр «i», говорящий о том, что искать без учета регистра. Применение этого параметра в preg_match() заменяет устаревшую функцию eregi().

Deprecated: Function ereg_replace() is deprecated in

Больше функция ereg_replace() поиска и замены учитывая регистр, работать не будет. Необходимо заменить её на аналогичную функцию — preg_replace(). Синтаксис, на примере очистки строки от лишних пробелов:

Deprecated: Function eregi_replace() is deprecated in

eregi_replace() – функция поиска и замены с без учета регистра. В примере выше осуществлялся поиск по строке, в котором учитывается регистр. Используйте параметр «i» в функции preg_replace() для работы без учета регистра.

Deprecated: Function split() is deprecated in

Функции разбивки строки на массив split() – с учетом регистра, spliti() – без учета регистра, теперь считаются устаревшими. Используйте аналог preg_split(), а если необходимо без учета регистра, то preg_split() с параметром «i». Пример, без учета регистра:

Deprecated: Function session_register() is deprecated in

Используйте супер глобальный массив $_SESSION для передачи значения переменной в сессию

Deprecated: Function session_unregister() is deprecated in
Также необходимо приметь массив $_SESSION вместе с функцией unset().

Deprecated: Function session_is_registered() is deprecated in

Функция session_is_registered(), проверяющая наличие переменной в сессии, устарела. Используйте супер глобальный массив $_SESSION

Deprecated: Function mysql_db_query() is deprecated in

Функция для подключения БД и отправки запроса mysql_db_query() теперь подлежит замене. Необходимо использовать mysql_select_db() для выбора базы и mysql_query() для отправки запроса в эту БД.

Deprecated: Function mysql_escape_string() is deprecated in

Вместо данной функции используйте аналог — mysql_real_escape_string(), который может принимать дополнительные параметры для экранирования специальных символов. И главное, эта функция экранирует с учетом текущей кодировки.

My contact form is othervise working but I keep getting the following error:

Deprecated: Function ereg() is deprecated in/home/.

I’m really lost here but I figure this is the part that needs some adjusting.

Finding a solution would be highly appreciated

3 Answers 3

You must use preg_match instead of ereg because the last one is deprecated.

Replacing it is not a big deal:

p.s. I had to modify more than one hundred files while I was porting my old project to PHP 5.3 to avoid manually modifying I’ve used following script to do it for me:

I hope it helps.

The function ereg() is deprecated and should not be used any more. The documentation tells you what to do (to use preg_match instead).

Like you said — no bigie, it works like a charm:

Недавно версия PHP 5.3 стала стабильной и набирает обороты у всех хостинг провайдеров. В одно время все CMS-ки выпустили обновления которые требуют PHP 5.3 и не ниже. Итак, сейчас уже PHP 5.3 стоит практически у каждого прогрессивного хостинг провайдера, поэтому можно смело обсуждать плюсы и минусы данной версии. Конкретной темой сегодняшней статьи будет проблема не работающих функций в новой версии.

А именно таких функций: ereg(), eregi() и split(). После переноса наших сайтов на версию PHP 5.3 начали появляться ошибки типа: Function ereg() is deprecated in, Function eregi() is deprecated in или function split() is deprecated in.

Такие ошибки довольно легко исправить, например ошибку “function split() is deprecated in” можно исправить просто заменив слово split в вашем коде на explode .

Да именно так, все очень просто, точно также можно исправить ошибку: Function ereg() is deprecated in, просто заменить ereg и eregi на preg_match. Вместо и той и той функции ставится preg_match(“/abcd/i” ). Кстати обратите внимание на delimiters. А именно в новой функции это два “слеша” выражения в “” . За последним слешем ставится “i”, если мы изменяем функцию eregi().

Ошибку Function ereg_replace() is deprecated in можно пофиксить всего лишь заменив ereg_replace на preg_replace.

Аналогичным образом решается ошибка: deprecated: function set_magic_quotes_runtime() is deprecated in

Нужно сделать так к примеру:

@set_magic_quotes_runtime(0); заменить на ini_set(‘magic_quotes_runtime’, 0);

@set_magic_quotes_runtime($mqr); заменить на ini_set(‘magic_quotes_runtime’, $mqr);

Также хотел бы обратить ваше внимание на то, что не стоит включать поддержку старых функций вместо того чтобы заменить их на новые, потому что в последующих релизах PHP вам все равно придется изменять их на новые, ведь все старые функции будут удалены полностью.

Оставляйте ваши отзывы или пишите ваши вопросы в комментарии, постараемся помочь если у вас возникнут трудности.

Источник: computermaker.info

Понравилась статья? Поделиться с друзьями:
Ок! Компьютер
Добавить комментарий