Строки
PHP Manual

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

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

VersionFunctionDescription
7.2.0number_formatnumber_format была изменена, чтобы не возвращать -0, ранее -0 могло быть возвращено в случаях когда number был -0.01.
 parse_strИспользование parse_str без второго параметра будет вызывать ошибку уровня E_DEPRECATED.
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.
5.5.21cryptТеперь, если в параметр salt передано неправильное значение "*0", то теперь возвращается "*1" согласно другим криптографическим реализациям. До этой версии PHP 5.5 (и другие ветки) возвращал DES хеш.
5.5.11substr_comparelength теперь может быть равной 0.
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.
 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.
 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.

Строки
PHP Manual