Устранение ошибки Deprecated: function is deprecated in

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

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

Deprecated: Function ereg() is deprecated in

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

if (preg_match("/zzz/i", "Сообщаем Вам zzz")) {
    echo "Фраза zzz присутствует в строке";
} else {
    echo "Нет";
}

Deprecated: Function eregi() is deprecated in

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

Deprecated: Function ereg_replace() is deprecated in

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

<?php
$perr = 'Тестовая   строка';
$perr = preg_replace('/\s\s+/', ' ', $perr);
// Получим 'Тестовая строка'
echo $perr;
?>

Deprecated: Function eregi_replace() is deprecated in

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

$perr = preg_replace('/\s\s+/i', ' ', $perr);

Deprecated: Function split() is deprecated in

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

<?php
// разделяем предложение по произвольному числу запятых и пробелов,
// которые включают в себя  " ", \r, \t, \n и \f
$fraza = preg_split("/[\s,]+/i", "На улице тепло, солнце");
?>

Deprecated: Function session_register() is deprecated in

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

Было:

$a_login = "Admin";
session_register("a_login");

Теперь:

$a_login = "Admin";
$_SESSION["a_login"] = $a_login;

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

Было:

session_unregister("name");

Теперь:

unset($_SESSION['name']);

Deprecated: Function session_is_registered() is deprecated in

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

Было:

if(session_is_registered($test))

Теперь:

if(isset($_SESSION['test']))

Deprecated: Function mysql_db_query() is deprecated in

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

Было:

mysql_db_query("bd_site", "SELECT * FROM users");

Теперь:

$link = mysql_connect('localhost', 'user', 'pass')
mysql_select_db(' bd_site ', $link);
mysql_query("SELECT * FROM users");

Deprecated: Function mysql_escape_string() is deprecated in

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

0 комментариев

Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.