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

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

VersionFunctionDescription
7.1.0str_shuffleВнутренний алгоритм получения случайных чисел изменен с функции rand библиотеки libc на генератор на базе Вихря Мерсена.
 striposДобавлена поддержка отрицательных значений offset.
 strposДобавлена поддержка отрицательных значений offset.
 substr_countДобавлена поддержка отрицательных значений offset и length.
7.0.0setlocaleУдалена поддержка для параметра category передаваемого как строка. С текущей версии можно пользоваться только константами LC_*.
 substrЕсли длина строки string равна количеству символов, указанному в start, то возвращается пустая строка. До этой версии в этом случае возвращалась FALSE.
5.6.5cryptТеперь, если в параметр salt передано неправильное значение "*0", то теперь возвращается "*1" согласно другим криптографическим реализациям. До этой версии PHP 5.6 возвращал DES хэш.
5.6.0cryptЕсли параметр salt пропущен, то бросается предупреждение E_NOTICE.
 html_entity_decodeЗначение по умолчанию для параметра encoding было изменено на значение конфигурационной опции default_charset.
 htmlentitiesЗначение по умолчанию для параметра encoding было изменено на значение конфигурационной опции default_charset.
 htmlspecialcharsЗначение по умолчанию для параметра encoding было изменено на значение конфигурационной опции default_charset.
 substr_comparelength теперь может быть равной 0.
5.5.21cryptТеперь, если в параметр salt передано неправильное значение "*0", то теперь возвращается "*1" согласно другим криптографическим реализациям. До этой версии PHP 5.5 (и другие ветки) возвращал DES хэш.
5.5.1hex2binЕсли входная строка не является правильной шестнадцатеричной строкой, то будет выброшено предупреждение.
5.4.32, 5.5.16ucwordsДобавлен параметр delimiters.
5.4.4hex2binЕсли строка имеет нечетную длину, выбрасывается предупреждение. В PHP 5.4.0 такая строка принималась, а последний байт просто обрезался.
5.4.0get_html_translation_tableЗначение по умолчанию для параметра encoding было изменено на UTF-8.
 get_html_translation_tableБыли добавлены константы ENT_HTML401, ENT_XML1, ENT_XHTML и ENT_HTML5.
 html_entity_decodeКодировка по умолчанию сменилась с ISO-8859-1 на UTF-8.
 html_entity_decodeБыли добавлены константы ENT_HTML401, ENT_XML1, ENT_XHTML и ENT_HTML5.
 htmlentitiesThe constants ENT_SUBSTITUTE, ENT_DISALLOWED, ENT_HTML401, ENT_XML1, ENT_XHTML и ENT_HTML5.
 htmlentitiesЗначение по умолчанию для параметра encoding было изменено на UTF-8.
 htmlspecialcharsЗначение по умолчанию для параметра encoding было изменено на UTF-8.
 htmlspecialcharsДобавлены константы ENT_SUBSTITUTE, ENT_DISALLOWED, ENT_HTML401, ENT_XML1, ENT_XHTML и ENT_HTML5.
 htmlspecialchars_decodeДобавлены константы ENT_HTML401, ENT_XML1, ENT_XHTML и ENT_HTML5.
 number_formatФункция поддерживает многобайтную строку в качестве параметров dec_point и thousands_sep. В предыдущих версиях в качестве разделителя использовался только первый байт из каждого параметра.
5.3.7cryptДобавлены $2x$ и $2y$ режимы Blowfish для предотвращения возможных "high-bit" атак.
5.3.4get_html_translation_tableДобавлен параметр encoding.
 strip_tagsstrip_tags игнорирует самозакрывающиеся тэги XHTML в allowable_tags.
5.3.2cryptДобавлено хэширование алгоритмами SHA-256 и SHA-512, основанное на реализации Ulrich Drepper.
 cryptИсправлено поведение Blowfish при некорректных раундах: теперь возвращается "ошибочная" строка ("*0" или "*1") вместо отката к использованию DES.
5.3.0cryptPHP теперь использует собственную реализацию MD5, стандартного DES, расширенного DES и Blowfish алгоритмов, которые будут использованы в случае отсутствия их поддержки в системе.
 htmlentitiesДобавлена константа ENT_IGNORE.
 htmlspecialcharsДобавлена константа ENT_IGNORE.
 nl2brДобавлен необязательный параметр is_xhtml.
 setlocaleЭта функция в настоящее время бросает уведомления E_DEPRECATED, если строка передается в параметре category вместо одной из констант LC_*.
 stristrДобавлен необязательный параметр before_needle.
 strlenРанние версии этой функции рассматривали массивы как строку Array, возвращая таким образом 5 в качестве длины этой строки, и вызывали ошибку уровня E_NOTICE.
 strstrДобавлен необязательный параметр before_needle.
5.2.5addcslashesДобавлены экранирующие последовательности \v и \f.
5.2.3htmlentitiesДобавлен параметр double_encode.
 htmlspecialcharsДобавлен параметр double_encode.
5.2.2 - 5.2.6substrЕсли параметр start указывает на позицию с отрицательной обрезкой, возвращается FALSE. Другие версии возвращают строку с начала.
5.1.0explodeДобавлена поддержка отрицательных значений limit
 md5_fileФункция изменена для работы с потоковым API. Это означает, что ее можно использовать с обертками, например, так: md5_file('http://example.com/..')
 sha1_fileФункция теперь работает с потоковым API. Это означает, что ее можно использовать с обертками, например, sha1_file('http://example.com/..')
 str_word_countДобавлен параметр charlist
 substr_compareДобавлена возможность использования отрицательных значений в offset.
 substr_countДобавлены параметры offset и length
5.0.0strip_tagsstrip_tags теперь безопасна для обработки бинарных данных.
 strrposПараметр needle может быть строкой из более чем одного символа.
4.3.0stristrstristr теперь бинарно-безопасна.
 strrchrЭта функция теперь бинарно-безопасна.
 strstrstrstr теперь бинарно безопасна.
4.2.3strcollТеперь эта функция работает и на win32.