Переход с PHP 5.2
на PHP 5.3


Почему?

Рано или поздно Вы видите на своём сайте загаживающие Вам всю картинку сообщeния:

Какие функции надо менять и как

Таблица

Версия PHPПримеры
PHP 5.25.3БылоСтало
UNDER CONSTRUCTION, SORRY
---date_default_timezone_set() date_default_timezone_set('Europe/Moscow')
splitexplode

Нетаблица

Взято отсюда, по следам этого.

При переходе с PHP 5.2.x на PHP 5.3.x перестают работать некоторые функции, так php изживает и развивает себя. Но для разработчика начинается головная боль, особенно если используются CMS, написанные на PHP (например MODx), которые вдруг выдают ошибки.

Хотя это даже не ошибки, а предупреждения, что в дальнейшем,  php не будет использовать некоторые функции или заменит их.

  1. Итак счастливым обладателям php 5.3.x стоит заменить функции:

    ereg() — впредь используйте preg_match()

    ereg_replace() — пользуйтесь preg_replace()
    eregi() — пользуйтесь preg_match() с модификатором ‘i’
    eregi_replace() — пользуйтесь preg_replace() с модификатором ‘i’
    split() — пользуйтесь preg_split()
    spliti() — пользуйтесь preg_split() с модификатором ‘i’
    set_magic_quotes_runtime() и ее синоним magic_quotes_runtime()
    session_register() — пользуйтесь суперглобальный массив $_SESSION
    session_unregister() — пользуйтесь суперглобальный массив $_SESSION
    session_is_registered() — пользуйтесь суперглобальный массив $_SESSION
    set_socket_blocking() — пользуйтесь е stream_set_blocking()
    mysql_db_query() — пользуйтесь mysql_select_db() и mysql_query()
    mysql_escape_string() — пользуйтесь mysql_real_escape_string()


  2. Переменные Drepecated в PHP 5.3.x надо заменить соответственно:

    HTTP_SERVER_VARS -> _SERVER
    HTTP_POST_VARS -> _POST
    HTTP_ENV_VARS -> _ENV
    HTTP_GET_VARS -> _GET
    HTTP_COOKIE_VARS -> _COOKIES
    HTTP_SESSION_VARS -> _SESSION
    HTTP_POST_FILES -> _FILES


  3. Теперь для разрушения сессии обязательно надо сделать unset всех переменных сессии ($_SESSION = array()):

session_start();
$_SESSION = array();
session_destroy();

Лирика

Как же меня достало перелопачивать горы Вашего кода, уеб-программисты!
(С) 2012 Sergej Qkowlew