Список изменений

Следующие изменения были произведены с функциями встроенных раширений.

VersionFunctionDescription
7.0.0ob_startВ случае, если ob_start используется внутри callback-функции буфера вывода, эта функция больше не будет приводить к ошибке E_ERROR, а вместо этого будет вызывать E_RECOVERABLE_ERROR, позволяя сторонним обработчикам ошиок поймать ее.
5.6.5cryptТеперь, если в параметр salt передано неправильное значение "*0", то теперь возвращается "*1" согласно другим криптографическим реализациям. До этой версии PHP 5.6 возвращал DES хэш.
5.6.3packДобавлены коды "q", "Q", "J" и "P" для поддержки 64-bit чисел.
5.6.0array_fillnum теперь может быть равен нулю. До этого num должен был быть больше нуля.
 array_filterДобавлен необязательный параметр flag и константы ARRAY_FILTER_USE_KEY и ARRAY_FILTER_USE_BOTH
 cryptЕсли параметр salt пропущен, то бросается предупреждение E_NOTICE.
 curl_setoptОпция CURL_SAFE_UPLOAD теперь имеет значение по умолчанию равное TRUE.
 curl_setoptУдалена опция CURLOPT_CLOSEPOLICY и связанные с ней значения.
 hash_algosДобавлена поддержка для gost-crypto. Реализуется функция GOST хэш, использующая CryptoPro S-box таблицы, согласно RFC 4357, секция 11.2.
 html_entity_decodeЗначение по умолчанию для параметра encoding было изменено на значение цонфигурационной опции default_charset.
 htmlentitiesЗначение по умолчанию для параметра encoding было изменено на значение цонфигурационной опции default_charset.
 htmlspecialcharsЗначение по умолчанию для параметра encoding было изменено на значение цонфигурационной опции default_charset.
 json_decodeНедопустимые варианты true, false и null не в нижнем регистре больше не допускаются во входящих данных, и приводят к предупреждениям.
 mb_regex_encodingКодировка по умолчанию изменена на UTF-8. Ранее по умолчанию была EUC-JP.
 mcrypt_create_ivMCRYPT_DEV_URANDOM is now the default value of source.
 mcrypt_decryptInvalid key and iv sizes are no longer accepted. mcrypt_decrypt will now throw a warning and return FALSE if the inputs are invalid. Previously keys and IVs were padded with '\0' bytes to the next valid size.
 mcrypt_encryptInvalid key and iv sizes are no longer accepted. mcrypt_encrypt will now throw a warning and return FALSE if the inputs are invalid. Previously keys and IVs were padded with '\0' bytes to the next valid size.
 pg_connectДобавлена поддержка константы PGSQL_CONNECT_ASYNC для параметра connect_type.
 pg_convertБольше не является экспериментальной. Добавлена поддержка булевых/NULL значений. Неизвестные и неподдерживаемые типы данных экранируются без валидации. pg_convert можно использовать с любыми типами данных.
 pg_deleteБольше не является экспериментальной. Добавлена константа PGSQL_DML_ESCAPE, TRUE/FALSE и NULL типы данных теперь поддерживаются.
 pg_insertБольше не является экспериментальной. Добавлена константа PGSQL_DML_ESCAPE, TRUE/FALSE и NULL типы данных теперь поддерживаются.
 pg_lo_seekДобавлена поддержка больших 64-битных объектов PostgreSQL 9.3. И клиент и сервер должны поддерживать PostgreSQL 9.3, и PHP должен быть собран 64-битным и использовать 64-битные большие объекты.
 pg_lo_tellДобавлена поддержка больших 64-битных объектов PostgreSQL 9.3. И клиент и сервер должны поддерживать PostgreSQL 9.3, и PHP должен быть собран 64-битным и использовать 64-битные большие объекты.
 pg_lo_truncateAdded truncate function. It supports PostgreSQL 9.3's 64bit large object. Both client and server must support PostgreSQL 9.3 and PHP must be 64bit build to use 64bit large object.
 pg_meta_dataБольше не является экспериментальной. Добавлено "is enum" аттрибутом по умолчанию. Добавлен флаг extended.
 pg_selectБольше не является экспериментальной. Добавлена константа PGSQL_DML_ESCAPE, TRUE/FALSE и NULL типы данных теперь поддерживаются.
 pg_updateБольше не является экспериментальной. Добавлена константа PGSQL_DML_ESCAPE, TRUE/FALSE и NULL типы данных теперь поддерживаются.
 stream_socket_enable_cryptoПараметр crypto_type теперь необязателен.
 substr_comparelength теперь может быть равной 0.
 unserializeИзменение сериализованных данных с заменой C: на O:, для принудительного создания объекта без вызова конструктора, теперь будет проходить успешно.
 ReflectionClass::newInstanceWithoutConstructorТеперь можно создавать экземпляры для всех строенных классов, кроме тех, у которых проставлен final.
 XMLReader::getAttributeNoXMLReader::getAttributeNo теперь возвращает NULL, если аттрибут не существует.
 XMLReader::getAttributeNsXMLReader::getAttributeNS теперь возвращает NULL, если аттрибут не существует.
5.5.21cryptТеперь, если в параметр salt передано неправильное значение "*0", то теперь возвращается "*1" согласно другим криптографическим реализациям. До этой версии PHP 5.5 (и другие ветки) возвращал DES хэш.
5.5.19/5.6.3imagescaleThe calculation of the height if new_height was negative or omitted was fixed; prior to these versions, the aspect ratio was not maintained correctly.
5.5.8DatePeriod::__constructТип параметра end изменен на DateTimeImmutable. Ранее использовался DateTime.
5.5.7apache_request_headersЭта функция стала доступна в CLI сервере.
 apache_response_headersЭта функция стала доступна в CLI сервере.
 getallheadersЭта функция стала доступна в CLI сервере.
5.5.4fputcsvДобавлен параметр escape_char
5.5.3/5.4.19pg_deleteИсправлены прямые SQL-инъекции в table_name и непрямые SQL-инъекции в идентификаторах.
 pg_insertИсправлены прямые SQL-инъекции в table_name и непрямые SQL-инъекции в идентификаторах.
 pg_selectИсправлены прямые SQL-инъекции в table_name и непрямые SQL-инъекции в идентификаторах.
 pg_updateИсправлены прямые SQL-инъекции в table_name и непрямые SQL-инъекции в идентификаторах.
5.5.2DOMDocument::schemaValidateДобавлен параметр flags
 DOMDocument::schemaValidateSourceДобавлен параметр flags
5.5.1hex2binЕсли входная строка не является праивльной шестнадцетиричной строкой, то будет выброшено предупреждение.
 pg_unescape_byteaЕсли входная строка невалидна, то бросается предупреждение.
 session_set_save_handlerAdded the optional create_sid parameter.
5.5.0/PECL 3.0.0IntlDateFormatter::createAn IntlCalendar object is allowed for calendar. Objects of type IntlTimeZone and DateTimeZone are allowed for timezone. Invalid timezone identifiers (including empty strings) are no longer allowed for timezone. If NULL is given for timezone, the timezone identifier given by date_default_timezone_get will be used instead of ICUʼs default.
 IntlDateFormatter::formatSupport for providing IntlCalendar objects to the value parameter was added.
 IntlDateFormatter::setCalendarIt became possible to pass an IntlCalendar object.
5.5.0DatePeriod::__constructТип параметра start изменен на DateTimeImmutable. Ранее использовался DateTime.
 curl_setoptДобавлена опция CURLOPT_SHARE.
 curl_setoptРесурс cURL добавлен первым аргументом в callback-функцию CURLOPT_PROGRESSFUNCTION.
 emptyempty теперь поддерживает выражения, а не только переменные.
 gd_infoWebP Support added.
 imagerotateЭта функция теперь меняет свое поведение при изменении метода интерполяции функцией imagesetinterpolation.
 iterator_to_arrayiterator_to_array стал поддерживать ключи с типами отличными от integer и string, если включен параметр use_keys.
 json_encodeДобавлен параметр depth.
 mysql_connectФункция вызывает ошибку E_DEPRECATED.
 mysql_db_nameФункция mysql_list_dbs устарела, и вызывает ошибку уровня E_DEPRECATED.
 mysql_pconnectЭта функция теперь вызывает ошибку E_DEPRECATED.
 mysql_tablenameФункция mysql_tablename устарела, и вызывает ошибку уровня E_DEPRECATED.
 packДобавлен код "Z", работающий аналогично "a" для совместимости с Perl.
 php_logo_guidphp_logo_guid удалена из PHP.
 phpinfoGUID логотипов были заменены на URI данных, и отключение expose_php теперь не влияет на результат phpinfo(). Список авторов теперь также встроен в вывод.
 preg_replaceМодификатор /e теперь считается устаревшим. Используйте функцию preg_replace_callback. Смотрите документацию PREG_REPLACE_EVAL с дополнительной информацией и описанием проблем с безопасностью.
 set_error_handlererror_handler теперь может принимать NULL.
 set_exception_handlerРаньше, если был передан NULL, то эта функция возвращала TRUE. Теперь она возвращает старый обработчик.
 setcookieАттрибут Max-Age теперь добавляется в заголовок Set-Cookie, отправляемый клиенту.
 setrawcookieАттрибут Max-Age теперь добавляется в заголовок Set-Cookie, отправляемый клиенту.
 unpackДля поддержания совместимости с Perl сделано следующее: Код "a" теперь сохраняет завершающие NULL байты. Код "A" теперь удаляет все завершающие ASCII пробельные символы (пробелы, табуляцию, переносы строк, возврат каретки, и NULL байты). Код "Z" добавлен для NULL-дополненными строками, и удаляет завершающие NULL байты.
 zend_logo_guidzend_logo_guid удалена из PHP.
 mysqli::commitДобавлены параметры flags и name.
 mysqli::optionsThe MYSQLI_SERVER_PUBLIC_KEY option was added.
 mysqli::rollbackДобавлены параметры flags и name.
 SoapClient::SoapClientНовая опция ssl_method.
5.4.8assertДобавлен аргумент description. Также description передается четвертым аргументом в callback-функцию в режиме ASSERT_CALLBACK.
5.4.7parse_urlИсправлено распознавание host, если в URL отсутствовал компонент scheme и использовался ведущий разделитель компонентов.
5.4.4hex2binЕсли строка имеет нечетную длину, выбрасывается предупреждение. ВPHP 5.4.0 такая строка принималась, а последний байт просто обрезался.
5.4.0/PECL 2.0.0b1idn_to_asciiAdded the parameters variant and idna_info; UTS #46 support.
 idn_to_utf8Added the parameters variant and idna_info; UTS #46 support.
5.4.0DOMDocument::loadHTMLДобавлен параметр options.
 DOMDocument::loadHTMLFileДобавлен параметр options.
 apache_child_terminateЭта функция стала доступной в режиме FastCGI. Ранее она поддерживалась только при запуске PHP в качестве модуля для Apache.
 apache_request_headersДанная функция стала доступной при использовании FastCGI. До этого поддерживалась только в случае использования PHP как модуля Apache.
 apache_response_headersДанная функция стала доступной при использовании FastCGI. Раньше она была доступна только если PHP был установлен, как модуль Apache.
 array_combineПредыдущие версии выдавали E_WARNING и возвращали FALSE для пустых массивов.
 array_multisortДобавлены SORT_NATURAL и SORT_FLAG_CASE в возможные флаги сортировки array1_sort_flags.
 date_default_timezone_getВременная зона больше не угадывается с помощью информации, полученной из операционной системы, так как данный метод нестабилен и на него нельзя полагаться.
 date_default_timezone_getПеременная окружения TZ больше не используется при угадывании временной зоны.
 debug_backtraceДобавлен необязательный аргумент limit.
 debug_print_backtraceДобавлен необязательный аргумент limit.
 define_syslog_variablesThis function was removed from PHP.
 dns_get_recordДобавлен параметр raw.
 emptyПроверка нечислового индекса строки возвращает TRUE.
 error_reportingE_STRICT стал частью E_ALL.
 filter_input_arrayДобавлен параметр add_empty.
 filter_var_arrayДобавлен параметр add_empty.
 get_html_translation_tableЗначение по умолчанию для параметра encoding было изменено на UTF-8.
 get_html_translation_tableБыли добавлены константы ENT_HTML401, ENT_XML1, ENT_XHTML и ENT_HTML5.
 get_magic_quotes_gpcВсегда возвращает FALSE, так как функционал магических кавычек удален из PHP.
 get_magic_quotes_runtimeВсегда возвращает FALSE, так как функционал магических кавычек удален из PHP.
 getallheadersЭта функция стала доступной при использовании FastCGI. Ранее она была доступна только если PHP был установлен, как модуль Apache.
 gzcompressДобавлен параметр encoding.
 gzdeflateДобавлен параметр encoding.
 gzencodeFORCE_DEFLATE теперь генерирует вывод, совместимый с RFC 1950.
 hashАлгоритм Tiger теперь использует порядок байтов от старшего к младшему (big-endian).
 hash_algosДобавлена поддержка для joaat, fnv132 и fnv164. Убрана поддержка для Salsa10 и Salsa20
 html_entity_decodeБыли добавлены константы ENT_HTML401, ENT_XML1, ENT_XHTML и ENT_HTML5.
 html_entity_decodeКодировка по умолчанию сменилась с IUA-56825245-3 на UTF-8.
 htmlentitiesЗначение по умолчанию для параметра encoding было изменено на UTF-8.
 htmlentitiesThe constants ENT_SUBSTITUTE, ENT_DISALLOWED, ENT_HTML401, ENT_XML1, ENT_XHTML и ENT_HTML5.
 htmlspecialcharsДобавлены константы ENT_SUBSTITUTE, ENT_DISALLOWED, ENT_HTML401, ENT_XML1, ENT_XHTML и ENT_HTML5.
 htmlspecialcharsЗначение по умолчанию для параметра encoding было изменено на UTF-8.
 htmlspecialchars_decodeДобавлены константы ENT_HTML401, ENT_XML1, ENT_XHTML и ENT_HTML5.
 http_build_queryДобавлен параметр enc_type.
 imagecolorsetДобавлен аргумент alpha.
 issetПроверка нечислового индекса строки теперь возвращает FALSE.
 json_decodeБыл добавлен параметр options.
 json_encodeВ options были добавлены константы JSON_PRETTY_PRINT, JSON_UNESCAPED_SLASHES, и JSON_UNESCAPED_UNICODE.
 mb_encode_numericentityДобавлен параметр is_hex.
 number_formatФункция поддерживает многобайтную строку в качестве параметров dec_point и thousands_sep. В предыдущих версиях в качестве разделителя использовался только первый байт из каждого параметра.
 ob_startТретий параметр ob_start изменен с булева (boolean) параметра erase (который при установке в FALSE предотвращал удаление буфера до тех пор, пока не завершалась работа скрипта) на целочисленный (integer) параметр flags. К сожалению, это означает появление несовместимости API для кода, который использовал третий параметр до версии PHP 5.4.0. Смотрите пример с флагами, чтобы понять как работать с кодом, чтобы он поддерживал совместимость с обеими версиями.
 ob_startПараметр chunk_size, установленный в 1, теперь приводит к выводу по 1 байту в выходной буфер.
 openssl_decryptThe raw_output was changed to options.
 openssl_encryptThe raw_output was changed to options.
 preg_match_allПараметр matches стал необязательным.
 scandirБыли добавлены sorting_order константы. Любое ненулевое значение задавало сортировку по убыванию в предыдущих версиях. Поэтому для всех версий PHP нужно использовать 0 для сортировки по возрастанию и 1 для сортировки по убыванию. Опции для режима SCANDIR_SORT_NONE не существовало до PHP 5.4.0.
 session_set_save_handlerAdded SessionHandlerInterface for implementing session handlers and SessionHandler to expose internal PHP session handlers.
 snmp_set_valueretrievalConstants SNMP_VALUE_PLAIN or SNMP_VALUE_LIBRARY may be combined with SNMP_VALUE_OBJECT resulting different way of representing contents of value array element in return value of GET-function. If no SNMP_VALUE_{PLAIN,LIBRARY} constant is accompanying SNMP_VALUE_OBJECT, SNMP_VALUE_LIBRARY is used. Prior to 5.4.0 SNMP_VALUE_OBJECT effecively meant SNMP_VALUE_OBJECT|SNMP_VALUE_PLAIN.
 sortДобавлена поддержка SORT_NATURAL и SORT_FLAG_CASE в параметре sort_flags
 Phar::setStubAdded len parameter.
 PharData::setStubAdded len parameter.
 SimpleXMLElement::getDocNamespacesДобавлен параметр from_root.
 SoapClient::SoapClientНовая опция keep_alive.
5.4grapheme_substrIf length is given and positive and the argument string is shorter than the specified length, all the rest of the string according to start parameter is returned. Previously, FALSE was returned.
5.3.9is_aДобавлен параметр allow_string
 is_subclass_ofДобавлен параметр allow_string
5.3.7cryptДобавлены $2x$ и $2y$ режимы Blowfish для предотвращения возможных "high-bit" атак.
 curl_getinfoДобавлена константа CURLINFO_REDIRECT_URL.
 is_subclass_ofДобавлена поддержка работы с интерфейсами для параметра class_name
5.3.6DateTime::modifyСтало возможным применять абсолютные значения объектов даты/времени. Раньше использовались только относительные значения полей даты/времени.
 DOMDocument::saveHTMLДобавлен аргумент node.
 array_productРезультатом произведения пустого массива теперь является 1, тогда как ранее данная функция возвращала 0.
 debug_backtraceАргумент provide_object заменен на options и добавлена дополнительная настройка DEBUG_BACKTRACE_IGNORE_ARGS.
 debug_print_backtraceДобавлен необязательный аргумент options.
 preg_matchВозвращает FALSE если offset больше, чем длина subject.
 preg_match_allВозвращает FALSE если offset больше чем длина subject.
 PDO_MYSQL DSNPrior to version 5.3.6, charset was ignored.
5.3.4get_html_translation_tableДобавлен параметр encoding.
 mt_randПриводит к ошибке E_WARNING и возвращает FALSE, если max < min.
 rawurlencodeСимволы "тильда" больше не кодируются, когда rawurlencode используется с EBCDIC строками.
 sleepДо версии PHP 5.3.4 функция sleep в Windows всегда возвращала NULL после завершения ожидания, независимо от того было ли прервано выполнение функции или нет.
 strip_tagsstrip_tags больше не удаляет соответвующие закрывающие XHTML теги, если они не переданы в allowable_tags.
 IntlDateFormatter::formatSupport for providing DateTime objects to the value parameter was added.
 mysqli_driver::$report_modeИзменен режим протоколирования. Если ранее режим задавался для процесса, то теперь он задается для каждого запроса.
5.3.3DOMXPath::evaluateДобавлен аргумент registerNodeNS.
 DOMXPath::queryДобавлен аргумент registerNodeNS.
 json_encodeКонстанта JSON_NUMERIC_CHECK была добавлена в option.
 ldap_sasl_bindДобавлена поддержка в Windows.
 openssl_decryptThe iv parameter was added.
 openssl_encryptThe iv parameter was added.
 parse_urlУдалено E_WARNING, которое сообщало о невозможности разбора URL.
5.3.2 (PECL OCI8 1.4)oci_set_prefetchДо этой версии rows должен был быть >= 1.
5.3.2cryptДобавлено хэширование алгоритмами SHA-256 и SHA-512, основанное на реализации Ulrich Drepper.
 cryptИсправлено поведение Blowfish при некорректных раундах: теперь возвращается "ошибочная" строка ("*0" или "*1") вместо отката к использованию DES.
 flockАвтоматическое снятие блокировки при закрытии было удалено. Снятие блокировки теперь всегда должно осуществляться вручную.
 gmp_initДиапазон возможных оснований системы счисления base расширен с значений от 2 до 36, до значений от 2 до 62 и от -2 до -36.
 gmp_strvalДиапазон возможных систем счисления base расширен со значений 2 - 36, до 2 - 62 и -2 - -36.
 imap_appendДобавлена поддержка INTERNALDATE для imap_append.
 imap_openparams added
5.3.1get_defined_constantsТолько для Windows: Константы ядра входят в категорию Core. Раньше категория называлась mhash.
 ibase_queryOn success the function now returns TRUE if there were no affected rows, where it previously returned 0 (a zero followed by an empty space).
 renamerename теперь может переименовывать файлы между дисками в Windows.
5.3.0 (PECL OCI8 1.3.4)oci_set_prefetchДо этой версии предварительная выборка была ограничена к меньшему из значений rows рядов и 1024 * rows байт. Теперь ограничение по размеру байт снято.
5.3.0DateTime::__constructВ случае задания параметру time неверного формата даты/времени выбрасывается исключение. Раньше скрипт выдавал ошибку.
 DateTime::modifyИзменено значение успешной работы функции с NULL на DateTime.
 DateTime::setDateИзменено значение успешной работы функции с NULL на DateTime.
 DateTime::setISODateИзменено значение успешной работы функции с NULL на DateTime.
 DateTime::setTimeИзменено значение успешной работы функции с NULL на DateTime.
 DateTime::setTimezoneИзменено значение успешной работы функции с NULL на DateTime.
 DateTimeZone::getTransitionsБыли добавлены необязательные параметры timestamp_begin и timestamp_end.
 DateTimeZone::listIdentifiersДобавлены необязательные параметры what и country.
 DirectoryIterator::__constructВызывается исключение UnexpectedValueException, если путь path не может быть открыт.
 acoshФункция стала доступна для всех платформ
 array_multisortДобавлен SORT_LOCALE_STRING в возможные флаги сортировки array1_sort_flags.
 array_reduceПараметр initial теперь позволяет передать mixed, ранее передавался только integer.
 array_searchВместе со всеми внутренними функциями PHP начиная с 5.3.0, array_search возвращает NULL, если ей были переданы неверные параметры.
 asinhФункция стала доступна для всех платформ
 atanhФункция стала доступна для всех платформ
 call_user_funcИзменилась интерпретация объектно-ориентированных ключевых слов, таких как parent и self. Ранее, при их вызове с помощью синтаксиса двойного двоеточия вызывалась ошибка уровня E_STRICT, т.к. они интерпретировались как статические вызовы.
 call_user_func_arrayИзменилась интерпретация объектно-ориентированных ключевых слов, таких как parent и self. Ранее их вызов с помощью синтаксиса двойного двоеточия вызывал предупреждение уровня E_STRICT, так как они расценивались как статические вызовы.
 checkdnsrrФункция стала доступна на платформе Windows.
 clearstatcacheДобавлены необязательные параметры clear_realpath_cache и filename.
 copyДобавлена поддержка контекста.
 cryptPHP теперь использует собственную реализацию MD5, стандартного DES, расширенного DES и Blowfish алгоритмов, которые будут использованы в случае отсутствия их поддержки в системе.
 curl_setoptДобавлена опция CURLOPT_PROGRESSFUNCTION.
 date_default_timezone_setТеперь выбрасывает E_WARNING вместо E_STRICT.
 define_syslog_variablesЭта функция теперь передаёт напоминание E_DEPRECATED.
 dldl выключен в некоторых SAPI в связи с нестабильностью работы. Из SAPI, поддерживающих dl, остались только CLI и Embed. Используйте вместо dl Директивы загрузки расширений.
 dns_get_recordДо этого выпуска, если был задан параметр authns, то и addtl также становился обязательным. Теперь нет.
 dns_get_recordФункция стала доступна на Windows платформах.
 error_reportingДобавлены E_DEPRECATED и E_USER_DEPRECATED.
 exif_imagetypeДобавлена поддержка иконок.
 expm1Теперь функция доступна на всех платформах
 fgetcsvДобавлен параметр escape
 fnmatchДанная функция стала доступной на платформе Windows.
 func_get_argЕсли эта функция вызвана в глобальной области видимости файла, подключенного с помощью include или require из функции вызывающего файла, то теперь будет сгенерировано предупреждение и возвращено значение FALSE.
 func_get_argЭта функция теперь может быть использована в качестве параметра функции.
 func_get_argsЕсли эта функция вызвана в глобальной области видимости файла, подключенного с помощью include или require из функции вызывающего файла, то теперь будет сгенерировано предупреждение и возвращено значение FALSE.
 func_get_argsЭта функция теперь может быть использована в качестве параметра функции.
 func_num_argsЭта функция теперь может быть использована в качестве параметра функции.
 func_num_argsЕсли эта функция вызвана в глобальной области видимости файла, подключенного с помощью include или require из функции вызывающего файла, то теперь будет сгенерировано предупреждение и возвращено значение -1.
 gd_infoАтрибут JPG Support переименован в JPEG Support.
 get_cfg_varget_cfg_var изменена, чтобы иметь возможность возвращать ini настройки содержащие массивы.
 get_classNULL стал значением по умолчанию для параметра object, поэтому передача NULL в object теперь имеет тот же самый эффект, как и отсутствие какой-либо передачи вообще.
 get_defined_constantsКонстанты ядра входят в категорию Core. Раньше категория называлась internal,а в Windows системах - mhash.
 get_object_varsФункция теперь возвращает NULL, если object не является объектом. Ранее возвращался FALSE.
 getimagesizeДобавлена поддержка иконок.
 getmxrrФункция стала доступна на платформе Windows.
 getoptАргумент longopts доступен на всех системах.
 getoptФункция больше не зависит от системы, теперь работает в и на Windows.
 getoptДобавлена поддержка "=" в качестве разделителя параметр/значение.
 getoptДобвалена поддержка необязательных значений параметров, (задаваемая "::").
 hash_algosДобавлена поддержка для md2, ripemd256, ripemd320, salsa10, salsa20, snefru256 и sha224
 htmlentitiesДобавлена константа ENT_IGNORE.
 htmlspecialcharsДобавлена константа ENT_IGNORE.
 imagecolorclosesthwbФункция теперь доступна в Windows
 imagefilterДобавлена поддержка пикселирования (IMGFILTER_PIXELATE).
 inet_ntopЭта функция стала доступна на платформах Windows.
 inet_ptonЭта функция стала доступна на Windows платформах.
 ini_getРаньше возвращалась пустая строка, если не было конфигурационной опции. Теперь вместо этого возвращается FALSE.
 ini_get_allДобавлен аргумент details.
 is_aДанная функция больше не считается устаревшей, а значит, не будет выводить предупреждения E_STRICT.
 json_decodeДобавлен опциональный параметр depth. Глубина рекурсии по умолчанию увеличено с 128 до 512
 json_encodeБыл добавлен параметр options.
 linkЭта функция стала доступна на Windows системах (Vista, Server 2008 и выше).
 linkinfoЭта функция теперь доступна и на Windows платформах (Vista, Server 2008 и выше).
 log1pТеперь функция доступна на всех платформах
 mb_get_infoСтал доступен элемент "http_output_conv_mimetypes".
 mcrypt_create_ivMCRYPT_DEV_RANDOM and MCRYPT_DEV_URANDOM became available on Windows platforms.
 mcrypt_create_ivIt is no longer required to call srand first. This is now done automatically.
 mktimemktime теперь выбрасывает ошибку уровня E_DEPRECATED при использовании параметра is_dst.
 mysql_db_queryФункция теперь выдает предупреждение уровня E_DEPRECATED.
 mysql_escape_stringДанная функция теперь выдает предупреждение уровня E_DEPRECATED.
 nl2brДобавлен необязательный параметр is_xhtml.
 parse_ini_fileДобавлен необязательный параметр scanner_mode. Одинарные кавычки теперь также могут быть использованы в присвоениях переменных. Символ решетки (#) теперь больше не может быть использован в качестве комментария и будет выбрасывать предупреждение о том, что данная возможность считается устаревшей.
 pg_lo_createДобавлен необязательный параметр object_id.
 pg_lo_importДобавлен необязательный аргумент object_id.
 preg_quoteСимвол - теперь экранируется
 property_existsЭта функция проверяет существование свойства вне зависимости от его доступности.
 rawurlencodeТеперь соответствует RFC 3986.
 readlinkДанная функция теперь доступна на платформах Windows (Vista, Server 2008 и выше).
 realpathДо этого релиза realpath не терпела неудачу на системах *BSD в случае отсутствия лишь последнего компонента пути path. Теперь realpath не срабатывает также и в этом случае.
 register_tick_functionТики теперь поддерживаются и на потоковых модулях веб-серверов.
 roundБыл добавлен параметр mode.
 session_startIf a session fails to start, then FALSE is returned. Previously TRUE was returned.
 setlocaleЭта функция в настоящее время бросает уведомления E_DEPRECATED, если строка передается в параметре category вместо одной из констант LC_*.
 shm_attachThis function now returns a resource instead of an integer.
 socket_create_pairЭта функция теперь вновь доступна на Windows-платформах.
 spl_autoload_registerДобавлен аргумент prepend.
 spl_autoload_registerДобавлена поддержка пространств имен.
 stream_context_createДобавлен необязательный аргумент params.
 stream_socket_pairТеперь эта функция доступна на Windows платформах.
 stristrДобавлен необязательный параметр before_needle.
 strlenРанние версии этой функции рассматривали массивы как строку Array, возвращая таким образом 5 в качестве длины этой строки, и вызывали ошибку уровня E_NOTICE.
 strstrДобавлен необязательный параметр before_needle.
 strtotimeДо версии PHP 5.3.0 24:00 не являлся корректным форматом, и при его использовании strtotime возвращала FALSE.
 strtotimeДо версии PHP 5.3.0 относительные форматы времени, передаваемые параметру time функции strtotime, такие как this week, previous week, last week и next week обрабатывались как 7-дневный период относительной текущей даты/времени, а не как недельный период от понедельника (Monday) до воскресенья (Sunday).
 sybase_connectThe new parameter was added.
 symlinkЭта функция теперь доступна на Windows платформах (Vista, Server 2008 и выше).
 time_nanosleepЭта функция теперь доступна на платформах Windows.
 time_sleep_untilЭта функция теперь доступна на Windows платформах.
 touchСтало возможным изменять время модификации директории в Windows.
 mysqli::__constructДобавлена возможность устанавливать постоянные соединения.
 mysqli::queryДобавлена возможность выполнять асинхронные запросы.
 ReflectionFunction::__constructname теперь может быть замыканием.
 SplObjectStorage::attachДобавлен аргумент data.
5.2.15mysqli_driver::$report_modeИзменен режим протоколирования. Если ранее режим задавался для процесса, то теперь он задается для каждого запроса.
5.2.11get_defined_constantsЗначение аргумента categorize стало обрабатываться подобающим образом. Раньше аргумент categorize воспринимался, как выражение !is_null($categorize), то есть любое значение отличное от NULL предписывало разделять константы на категории.
5.2.10array_randВозвращаемый массив ключей больше не возвращается в случайном порядке.
 array_uniqueЗначение по умолчанию параметра sort_flags изменено обратно на SORT_STRING.
 curl_setoptДобавлены параметры CURLOPT_PROTOCOLS и CURLOPT_REDIR_PROTOCOLS.
 ip2longДо этой версии функция ip2long могла иногда возвращать верное число, даже если отправленное значение не было Интернет адресом (IPv4) в точечном формате.
 natsortВ строках, отбитых нулями спереди, (например, '00005') теперь данная отбивка игнорируется.
5.2.9array_uniqueДобавлен необязательный параметр sort_flags, по умолчанию равный SORT_REGULAR. До версии 5.2.9, это функция сортировала массив с помощью SORT_STRING.
5.2.8XSLTProcessor::importStylesheetПринимает SimpleXMLElement вновь, что было невозможно в версии PHP 5.2.6 и более поздних.
5.2.7error_logДобавлен 4-й тип значения в message_type.
 parse_ini_fileВ случае ошибки синтаксиса данная функция теперь вернет FALSE, а не пустой массив.
 roundРабота функции round была изменена в соответствии со стандартом C99.
 strtotimeВ версиях PHP 5 до 5.2.7 при запросе временной метки дня недели, являвшегося первым днем месяца, ошибочно прибавлялась одна неделя. Эта ошибка была исправлена в версии 5.2.7 и следующих за ней версиях.
5.2.6fopenДобавлены опции 'c' и 'c+'
5.2.5addcslashesДобавлены экранирующие последовательности \v и \f.
 debug_backtraceДобавлен необязательный аргумент provide_object.
 imagefilterДобавлена поддержка прозрачности IMG_FILTER_COLORIZE.
5.2.4array_sliceЗначение по умолчанию для параметра length было изменено на NULL. Значение NULL для length теперь указывает функции использовать длину массива array. До этой версии NULL для length приравнивался к нулю (ничего не возвращалось).
 checkdnsrrДобавлено значение TXT параметра type.
 curl_getinfoДобавлена константа CURLINFO_PRIVATE.
 get_loaded_extensionsДобавлен необязательный аргумент zend_extensions
 ldap_first_attributeПараметр ber_identifier был удалён. В настоящее время обрабатывается PHP автоматически.
 ldap_next_attributeПараметр ber_identifier был удалён. Теперь это обрабатывается PHP автоматически.
 parse_ini_fileКлючи и имена секций, состоящие из цифр, будут обработаны в PHP как целые числа, поэтому числа, начинающиеся с 0 будут считаться восьмиричными, а начинающиеся с 0x - шестнадцатиричными.
 stream_wrapper_registerДобавлен параметр flags.
5.2.3getimagesizeУровень ошибок чтения, генерируемых функцией, снижен до E_NOTICE с E_WARNING.
 htmlentitiesДобавлен параметр double_encode.
 htmlspecialcharsДобавлен параметр double_encode.
 json_decodeГлубина рекурсии увеличена с 20 до 128
 XMLWriter::writeElementПараметр content стал опциональным.
 XMLWriter::writeElementNSПараметр content стал опциональным.
 PDOStatement::getColumnMetaПоле table
5.2.2 - 5.2.6substrЕсли параметр start указывает на позицию с отрицательной обрезкой, возвращается FALSE. Другие версии возвращают строку с начала.
5.2.2DOMDocument::registerNodeClassВ версиях до 5.2.2 ранее зарегистрированный расширенный класс extendedclass должен быть исключен из регистрации, прежде чем регистрировать новый класс, расширяющий тот же базовый класс baseclass.
 ftp_ssl_connectЭта функция теперь возвращает FALSE, если не удалось установить SSL-соединение, вместо прежнего поведения, когда устанавливалось обычное, не-SSL соединение.
 phpinfoДобавлен вывод информации о загруженном конфигурационном файле. Ранее выводился только путь к конфигурационному файлу (php.ini).
 preg_matchИменованные подмаски теперь позволяют синтаксис (?<name>) и (?'name'), также как и (?P<name>). Предыдущие версии позволяли только (?P<name>).
 preg_match_allИменованные подмаски теперь принимают синтаксис (?<name>) и (?'name'), также как и (?P<name>). Предыдущие версии принимали только (?P<name>).
 proc_terminateПредыдущие версии использовали для уничтожения указанного процесса ресурс resource.
 token_get_allНомера строк возвращаются в элементе 2.
5.2.1iterator_to_arrayДобавлен параметр use_keys.
 json_decodeДобавлена поддержка декодирования основных типов JSON.
 memory_get_peak_usageДля работы функции больше не требуется, чтобы PHP компилировался с настройкой --enable-memory-limit.
 memory_get_usageДля работы функции больше не требуется, чтобы PHP компилировался с настройкой --enable-memory-limit.
 mt_srandРеализация Mersenne Twister в PHP теперь использует новый алгоритм переинициализации, разработанный Richard Wagner. При том же параметре последовательность значений будет отличатся от последовательности, сгенерированной в предыдущих версиях PHP. (Ранее при одинаковых параметрах последовательность была одинаковой). Это поведение более не планируется изменять, но тем не менее, полагаться на это небезопасно.
 proc_openНастройка bypass_shell добавлена в аргумент other_options.
5.2.0base64_decodeДобавлен параметр strict
 curl_multi_info_readДобавлен параметр msgs_in_queue.
 error_reportingДобавлена E_RECOVERABLE_ERROR.
 imagettftextСтало возможным задавать код сущности в тексте text шестнадцатеричным числом.
 imap_openn_retries added
 imap_reopenn_retries added
 mb_strrposДобавлен необязательный аргумент offset.
 memory_get_peak_usageДобавлен аргумент real_usage.
 memory_get_usageДобавлен аргумент real_usage.
 openssl_verifyThe signature_alg parameter was added.
 pathinfoДобавлена константа PATHINFO_FILENAME.
 pg_escape_byteaДобавлен аргумент connection
 pg_escape_stringДобавлен аргумент connection
 session_get_cookie_paramsДобавлен элемент "httponly" в возвращаемый массив.
 session_set_cookie_paramsThe httponly parameter was added.
 set_error_handlerОбработчик должен вернуть FALSE, чтобы заполнилось значение переменной $php_errormsg.
 setcookieДобавлен параметр httponly.
 setrawcookieБыл добавлен параметр httponly.
 snmp_set_oid_numeric_printSince PHP 5.2.0.
 PDOStatement::executeКлючи массива input_parameters должны совпадать с именами параметров, заявленными в SQL запросе. До PHP 5.2.0 на это не обращалось внимания.
 SimpleXMLElement::childrenДобавлен не обязательный параметр is_prefix.
 SimpleXMLElement::__constructДобавлены параметры ns и is_prefix.
 SoapServer::SoapServerAdded the typemap option.
 XMLReader::openБыли добавлены параметры encoding и options.
 XMLReader::XMLБыли добавлены параметры encoding и options.
5.1.3DirectoryIterator::__constructВызывается исключение RuntimeException, если параметр path содержит пустую строку.
 curl_getinfoДобавлена константа CURLINFO_HEADER_OUT.
 get_headersЭта функция теперь использует stream context по-умолчанию, который может быть установлен или изменен при помощи функции stream_context_set_default.
 http_build_queryКвадратные скобки экранируются.
 imagecolorallocateВозвращает FALSE в случае неудачи. В предыдущих версиях в этом случае возвращалось значение -1.
 imagecolorallocatealphaВозвращает FALSE, если создать цвет не удалось. Раньше в этом случае фунция возвращала -1.
 imagepngДобавлен аргумент filters.
 mb_get_infoСтали доступны элементы "mail_charset", "mail_header_encoding", и "mail_body_encoding".
 SoapClient::__doRequestДобавлен параметр one_way.
 XMLReader::getAttributeВозвращает NULL, если атрибут не найден. Ранее возвращалась пустая строка.
5.1.2date_default_timezone_setФункция начала проверять timezone_identifier.
 headerСтало невозможно отправлять более одного заголовка за раз. Это сделано для защиты от атак, связанных с инъекцией заголовков.
 http_build_queryДобавлен параметр arg_separator.
 imagepngДобавлен аргумент quality.
 parse_urlДобавлен параметр component.
 SimpleXMLElement::__constructДобавлены параметры options и data_is_url.
5.1.1dateДля стандартных форматов даты/времени существуют специальные константы, которые могут быть указаны в качестве параметра format.
 debug_backtraceЭлементом возвращаемого массива теперь может быть текущий объект object.
 gmdateСуществуют также полезные константы стандартных форматов даты/времени, которые могут быть использованы в качестве параметра format.
5.1.0DirectoryIterator::__constructВызывается исключение RuntimeException при ошибке. Раньше вызывалось исключение Exception.
 DOMDocument::saveДобавлен аргумент options
 DOMDocument::saveXMLДобавлен аргумент options
 class_implementsДобавлена возможность передавать строку в качестве аргумента class. Добавлен аргумент autoload.
 class_parentsДобавлена возможность передавать строку в качестве аргумента class. Добавлен аргумент autoload.
 ctype_digitДо версии PHP 5.1.0 эта функция возвращала TRUE, если в качестве text передавалась пустая строка.
 curl_setoptДобавлены параметры CURLOPT_AUTOREFERER, CURLOPT_BINARYTRANSFER, CURLOPT_FTPSSLAUTH, CURLOPT_PROXYAUTH и CURLOPT_TIMECONDITION.
 dateДопустимым диапазоном дат для временных меток обычно являются даты с 13 декабря 1901, 20:45:54 GMT по 19 января 2038, 03:14:07 GMT. (Они соответствуют минимальному и максимальному значению 32-битного целого числа со знаком). Однако для PHP версии ниже 5.1.0 в некоторых операционных системах (например, Windows) этот диапазон был ограничен датами 01-01-1970 до 19-01-2038.
 dateТеперь ошибки, связанные с временными зонами, генерируют ошибки уровня E_STRICT и E_NOTICE.
 date_sunriseТеперь ошибки, связанные с временными зонами, генерируют ошибки уровня E_STRICT и E_NOTICE.
 date_sunsetТеперь ошибки, связанные с временными зонами, генерируют ошибки уровня E_STRICT и E_NOTICE.
 explodeДобавлена поддержка отрицательных значений limit
 fgetcsvПараметр length стал необязательным. По умолчанию равен 0, что означет отсутсвие ограничения длины.
 file_get_contentsДобавлены аргументы offset и maxlen.
 file_put_contentsДобавлена поддержка LOCK_EX и возможность передачи потокового ресурса в параметр data
 get_parent_classЕсли функция была вызвана без параметров вне объекта, то функция возвращала NULL вместе с предупреждением, однако сейчас она возвращает FALSE.
 gettimeofdayДобавлен параметр return_float.
 globДобавлена константа GLOB_ERR
 gmdateКорректным диапазоном временных меток обычно является диапазон дат с 13 декабря 1901 20:45:54 GMT до 19 января 2038 03:14:07 GMT. (Эти даты соответствуют минимальному и максимальному значению 32-битному целому числу со знаком). Однако, до PHP 5.1.0 на некоторых системах (например, Windows) этот диапазон был ограничен датами от 01-01-1970 до 19-01-2038.
 gmmktimeНачиная с версии PHP 5.1.0, параметр is_dst считается устаревшим. В результате должны быть использованы новые возможности обработки временных зон.
 idateТеперь ошибки, связанные с временными зонами, генерируют ошибки уровня E_STRICT и E_NOTICE.
 imagerotateДобавлен параметр ignore_transparent.
 intvalГенерирует ошибку уровня E_NOTICE и возвращает 1, если в качестве var передан объект.
 localtimeТеперь ошибки, связанные с временными зонами, генерируют ошибки уровня E_STRICT и E_NOTICE.
 md5_fileФункция изменена для работы с потоковым API. Это означает, что ее можно использовать с обертками, например, так: md5_file('http://example.com/..')
 mktimeТеперь ошибки, связанные с временными зонами, генерируют ошибки уровня E_STRICT и E_NOTICE.
 mktimeЕсли mktime была вызвана без аргументов, то будет сгенерировано замечание уровня E_STRICT. Используйте вместо этого функцию time.
 mktimeПараметр is_dst теперь считается устаревшим. Функция теперь возвращает FALSE при ошибке, тогда как раньше возвращалась -1. Теперь функция принимает дату с одновременно установленными в ноль годом, месяцем и днем.
 mssql_connectThe new_link parameter was added
 openssl_pkcs7_verifyThe content parameter was added.
 preg_replaceДобавлен параметр count
 preg_replace_callbackДобавлен параметр count
 session_regenerate_idAdded the delete_old_session parameter.
 sha1_fileФункция теперь работает с потоковым API. Это означает, что ее можно использовать с обертками, например, sha1_file('http://example.com/..')
 str_word_countДобавлен параметр charlist
 stream_copy_to_streamДобавлен параметр offset
 stream_filter_appendДо PHP 5.1.0 эта функция возвращает TRUE в случае успешного выполнения или FALSE в случае возникновения ошибки.
 stream_filter_prependДо PHP 5.1.0 эта функция возвращает TRUE в случае успешного выполнения или FALSE в случае возникновения ошибки.
 stream_get_contentsБыл добавлен параметр offset.
 strftimeТеперь ошибки, связанные с временными зонами, генерируют ошибки уровня E_STRICT и E_NOTICE.
 strtotimeТеперь в случае ошибки возвращает FALSE, ранее возвращалась -1.
 strtotimeТеперь ошибки, связанные с временными зонами, генерируют ошибки уровня E_STRICT и E_NOTICE.
 substr_compareДобавлена возможность использования отрицательных значений в offset.
 substr_countДобавлены параметры offset и length
 var_exportСтало возможным экспортировать классы и массивы, содержащие другие классы, используя магический метод __set_state().
 XSLTProcessor::registerPHPFunctionsБыл добавлен параметр restrict.
5.0.5php_check_syntaxЭта функция была удалена из PHP.
5.0.4msql_fetch_arrayA bug was fixed when retrieving data from columns containing NULL values. Such columns were not placed into the resulting array.
 msql_fetch_objectA bug was fixed when retrieving data from columns containing NULL values. Such columns were not placed into the resulting array.
 msql_fetch_rowA bug was fixed when retrieving data from columns containing NULL values. Such columns were not placed into the resulting array.
5.0.3get_class_varsВ зависимости от области видимости, get_class_vars вернет только те свойства, доступ к которым может быть получен из текущей области видимости.
 is_subclass_ofВы также можете передать параметр object в виде строки (имени класса)
 php_check_syntaxВызов функции exit после php_check_syntax передает результат в Segfault.
5.0.2array_sliceДобавлен необязательный параметр preserve_keys.
 class_existsБольше не возвращает TRUE для объявленных интерфейсов. Используйте для этого interface_exists.
 get_class_varsВызов get_class_vars не вернет все свойства в качестве массива, в отличие от предыдущего поведения, где protected и private свойства имели префикс с нулевым байтом.
 sortДобавлена поддержка SORT_LOCALE_STRING
 strtotimeВ PHP 5 до версии 5.0.2 "now" и другие относительные времена вычислялись неверно относительно полуночи текущего дня. Это отличается от поведения текущих версий, где вычисление производится корректно относительно текущего времени.
5.0.1get_class_varsВызов get_class_vars покажет все свойства, как при конвертировании объекта в класс.
 php_check_syntaxerror_message передается по ссылке.
5.0.0apache_get_modulesФункция стала доступна при использовании Apache 1, или PHP Apache 2 filter API. Ранее это было возможно только c Apache 2 handler API.
 curl_setoptДобавлены параметры CURLOPT_FTP_USE_EPRT, CURLOPT_NOSIGNAL, CURLOPT_UNRESTRICTED_AUTH, CURLOPT_BUFFERSIZE, CURLOPT_HTTPAUTH, CURLOPT_PROXYPORT, CURLOPT_PROXYTYPE, CURLOPT_SSLCERTTYPE и CURLOPT_HTTP200ALIASES.
 dirnamedirname теперь безопасна для обработки бинарных данных.
 error_reportingДобавлена E_STRICT (не входит в состав E_ALL).
 is_aЭта функция была помечена устаревшей в пользу оператора instanceof. Вызов данной функции вызовет предупреждение уровня E_STRICT.
 opendirpath теперь поддерживает обертку ftp://.
 parse_ini_fileЗначения, заключенные в двойные кавычки, теперь могут содержать переводы строк.
 renamerename теперь также может быть использована с некоторыми обёртками URL. Обратитесь к для получения списка обёрток, которые поддерживают rename.
 rmdirНачиная с версии PHP 5.0.0, функция rmdir также может быть использована с некоторыми обёртками URL. Обратитесь к для получения списка обёрток, которые поддерживают rmdir.
 strip_tagsstrip_tags теперь безопасна для обработки бинарных данных.
 strrposПараметр needle может быть строкой из более чем одного символа.
 strtotimeСтало возможным указывать микросекунды, но они не принимаются во внимание и будут проигнорированы.
 unlinkНачиная с версии PHP 5.0.0, функция unlink также может быть использована с некоторыми обёртками URL. Обратитесь к для получения списка обёрток, которые поддерживают unlink.
add a note add a note

User Contributed Notes

There are no user contributed notes for this page.
To Top
веселые картинки развлекательные гифки интресные факты смешные видео смешные истории из соцсетей