События
Почему выбирают нас?
10 дней бесплатно для тестирования услуг | |
Скидки до 15% при оплате от 6 месяцев | |
Круглосуточная техническая поддержка | |
Желающим уйти — возвращаем деньги | |
Новости
27.12.2022
График работы в праздники
07.10.2022
Передача полномочий ООО "Регистратор"
30.05.2022
Изменение цен
04.03.2022
SSL
« вернуться к списку новостей
На нашем хостинге доступны версии PHP 5.3 и PHP 5.4
28.03.2014Уважаемые клиенты, на нашем виртуальном хостинге активны версии PHP 5.3 и PHP 5.4. При необходимости использования той или иной версии вам достаточно написать в службу технической поддержки хостинга для переноса вашего аккаунта на сервер с нужным php. Напоминаем, что версии php 5.2 и ниже - на нашем хостинге не используются.
PHP версии 5.4.0 предлагает широкий спектр новых возможностей:
- Добавлена поддержка трейтов (механизм обеспечения повторного использования кода в языках с поддержкой единого наследования)
- Добавлен короткий синтаксис объявления массивов. Например, $a = [1, 2, 3, 4]; или $a = ['one' => 1, 'two' => 2, 'three' => 3, 'four' => 4];.
- Добавлена возможность разыменования массивов, возвращаемых функциями. Например: foo()[0].
- Классы для создания анонимных функций (Closures) теперь поддерживают $this.
- Оператор
- Добавлена возможность получения доступа к члену класса при создании экземпляра. Например: (new Foo)->bar().
- Теперь поддерживается такой синтаксис: Class::{expr}().
- Добавлен бинарный формат задания чисел, например: 0b001001101.
- Улучшены сообщения об ошибках разбора и предупреждения о несовместимых аргументах.
- Расширение по работе с сессиями теперь может отслеживать процесс загрузки файлов.
- Встроенный веб-сервер в режиме командной строки для разработчиков.
Хотя большая часть существующего кода PHP 5 должна работать без изменений, пожалуйста, примите к сведению следующие обратно несовместимые изменения:
- Безопасный режим более не поддерживается. Любое приложение, которое полагается на безопасный режим, возможно, требует внесения корректировок по части безопасности.
- "Волшебные" кавычки теперь не работают. Приложения, которые используют эту возможность, могут нуждаться в обновлении во избежание проблем с безопасностью. Функции get_magic_quotes_gpc() иget_magic_quotes_runtime() теперь всегда возвращают FALSE. Функция set_magic_quotes_runtime() вызывает ошибку уровня E_CORE_ERROR.
- Директивы php.ini register_globals и register_long_arrays были удалены.
- Возможность передачи по ссылке во время вызова функции была убрана.
- Операторы break и continue теперь не принимают аргументов в виде переменной. Например, выражениеbreak 1 + foo() * $bar; невозможно. Вы по-прежнему можете использовать явный аргумент в виде статической константы. Например, break 2;.
- Побочным эффектом этого изменения является то, что конструкции break 0;и continue 0; более недопустимы.
- В расширении date and time временная зона не может быть более установлена с помощью переменной окружения TZ. Вместо этого вам необходимо указать временную зону, используя опцию php.inidate.timezone или функцию date_default_timezone_set(). PHP теперь не будет пытаться определять временную зону. Вместо этого будет установлена зона "UTC" и выдано предупреждение E_WARNING.
- Нецифровые смещения строк, например $a['foo'], где $a - это строка, теперь возвращают false в функцииisset() и true в функции empty() и вызывают предупреждение E_WARNING при подобном использовании. Смещения, заданные типами double, bool и null также приводят к генерации предупреждения E_NOTICE, а строки, содержащие числа ($a['2']), все еще работают как и раньше. Обратите внимание, что смещения, подобные '12.3' и '5 foobar' рассматриваются как нечисловые и вызывают предупреждение E_WARNING, но преобразовываются к 12 и 5 соответственно по причине необходимости сохранения обратной совместимости. Примечание: следующий код возвращает различные результаты.$str='abc';var_dump(isset($str['x'])); // false для PHP 5.4 и выше, но true для 5.3 и ниже
- Преобразование массива в строку теперь приводит к предупреждению E_NOTICE, но результат преобразования будет по-прежнему строка "Array".
- Преобразование NULL, FALSE или пустой строки в объект путем добавления свойства теперь будет генерировать ошибку уровня E_WARNING вместо ошибки E_STRICT.
- Имена параметров, которые "затеняют" имена суперглобальных переменных, теперь расцениваются как фатальная ошибка. Это правило запрещает код, подобный этому: function foo($_GET, $_POST) {}.
- Хеш-алгоритмы Salsa10 и Salsa20 были удалены.
- Функция array_combine() теперь возвращает array() вместо FALSE, когда в качестве параметров заданы два пустых массива.
- Если вы используете функцию htmlentities() с азиатскими наборами символов, то она работает также, как функция htmlspecialchars(). Так всегда было в предыдущих версиях PHP, а теперь генерируется ошибка уровня E_STRICT.
Следующие ключевые слова теперь являются зарезервированными и не могут использоваться в качестве названия функций, классов и прочих имен:
- trait
- callable
- insteadof
Следующие функции были удалены из PHP:
- define_syslog_variables()
- import_request_variables()
- session_is_registered(), session_register() и session_unregister().
- Алиасы mysqli_bind_param(), mysqli_bind_result(), mysqli_client_encoding(), mysqli_fetch(),mysqli_param_count(), mysqli_get_metadata(), mysqli_send_long_data(), mysqli::client_encoding() и mysqli_stmt::stmt().