PHP 8.6.0 Beta 1 is available for testing

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

В классы, функции и методы модуля внесли следующие изменения.

VersionFunctionDescription
8.5.0chr Передача целочисленных значений за пределами интервала [0, 255] устарела.
ord Передача строки размером больше одного байта устарела.
setlocale Передача целого числа 0 в качестве аргумента locales больше не поддерживается и теперь выбрасывает ошибку TypeError.
8.4.0str_getcsv Вызов функции без явной передачи значения в параметр escape устарел.
str_getcsv Функция теперь подражает поведению функций fgetcsv и fputcsv и выбрасывает ошибку ValueError, если в параметры separator, enclosure или escape передали недопустимое значение.
strcspn До PHP 8.4.0 при передаче в параметр characters пустой строки поиск ошибочно останавливался на первом NUL-байте в аргументе string.
8.3.0number_format Добавили ​​обработку отрицательных значений для параметра decimals.
str_getcsv Вместо строки с одним нулевым байтом возвращается пустая строка, если последнее поле содержит только незавершённый символ ограничения значения поля. enclosure.
strrchr Добавлен параметр before_needle.
strtok Функция теперь выдаёт ошибку уровня E_WARNING, когда параметр token не указали.
8.2.0lcfirst Приведение к единому регистру больше не зависит от региональных настроек, которые установили функцией setlocale. Преобразовываются только символы кодировки ASCII.
str_ireplace Приведение к единому регистру больше не зависит от региональных настроек, которые установили функцией setlocale. Преобразовываются только символы кодировки ASCII. Байты, которые не относятся к кодировке ASCII, сравнятся по значению байта.
str_split Функция теперь возвращает пустой массив (array), если параметр string не указали; раньше возвращался массив (array), который содержал одну пустую строку.
strcasecmp Функция больше не гарантирует возврат разницы strlen($string1) - strlen($string2), когда длины строк не равны, но теперь вместо этого иногда возвращает -1 или 1.
strcmp Функция больше не гарантирует возврат разницы strlen($string1) - strlen($string2), когда длины строк не равны, но теперь вместо этого иногда возвращает -1 или 1.
stripos Приведение к единому регистру больше не зависит от региональных настроек, которые установили функцией setlocale. Преобразовываются только символы кодировки ASCII. Байты, которые не относятся к кодировке ASCII, сравнятся по значению байта.
stristr Приведение к единому регистру больше не зависит от региональных настроек, которые установили функцией setlocale. Преобразовываются только символы кодировки ASCII. Байты, которые не относятся к кодировке ASCII, сравнятся по значению байта.
strnatcasecmp Функция больше не гарантирует возврат разницы strlen($string1) - strlen($string2), когда длины строк не равны, но теперь вместо этого иногда возвращает -1 или 1.
strnatcmp Функция больше не гарантирует возврат разницы strlen($string1) - strlen($string2), когда длины строк не равны, но теперь вместо этого иногда возвращает -1 или 1.
strncasecmp Функция больше не гарантирует возврат разницы strlen($string1) - strlen($string2), когда длины строк не равны, но теперь вместо этого иногда возвращает -1 или 1.
strncmp Функция больше не гарантирует возврат разницы strlen($string1) - strlen($string2), когда длины строк не равны, но теперь вместо этого иногда возвращает -1 или 1.
strripos Приведение к единому регистру больше не зависит от региональных настроек, которые установили функцией setlocale. Преобразовываются только символы кодировки ASCII. Байты, которые не относятся к кодировке ASCII, сравнятся по значению байта.
strtolower Приведение к единому регистру больше не зависит от региональных настроек, которые установили функцией setlocale. Преобразовываются только символы кодировки ASCII.
strtoupper Приведение к единому регистру больше не зависит от региональных настроек, которые установили функцией setlocale. Преобразовываются только символы кодировки ASCII.
substr_compare Функция больше не гарантирует возврат разницы strlen($string1) - strlen($string2), когда длины строк не равны, но теперь вместо этого иногда возвращает -1 или 1.
ucfirst Приведение к единому регистру больше не зависит от региональных настроек, которые установили функцией setlocale. Преобразовываются только символы кодировки ASCII.
ucwords Приведение к единому регистру больше не зависит от региональных настроек, которые установили функцией setlocale. Преобразовываются только символы кодировки ASCII.
utf8_decode Функция устарела.
utf8_encode Функция устарела.
8.1.0get_html_translation_table Значение по умолчанию параметра flags изменено с ENT_COMPAT на ENT_QUOTES | ENT_SUBSTITUTE | ENT_HTML401.
html_entity_decode Значение по умолчанию для параметра flags изменили с ENT_COMPAT на ENT_QUOTES | ENT_SUBSTITUTE | ENT_HTML401.
htmlentities Значение по умолчанию параметра flags изменили с ENT_COMPAT на ENT_QUOTES | ENT_SUBSTITUTE | ENT_HTML401.
htmlspecialchars Значение по умолчанию для параметра flags изменили с ENT_COMPAT на ENT_QUOTES | ENT_SUBSTITUTE | ENT_HTML401.
htmlspecialchars_decode Значение по умолчанию для параметра flags изменили с ENT_COMPAT на ENT_QUOTES | ENT_SUBSTITUTE | ENT_HTML401.
8.0.0convert_cyr_string Функцию удалили.
convert_uuencode До этой версии при попытке преобразовать пустую строку возвращалось false без особой причины.
count_chars До этой версии функция возвращала false, если возникала ошибка.
crypt Параметр salt больше необязателен.
explode Теперь функция explode выбрасывает исключение TypeError, если разделитель separator — пустая строка "". Раньше функция explode вместо исключения возвращала false.
fprintf Функция больше не возвращает false, если возникла ошибка.
fprintf Выбрасывает исключение ValueError, если количество аргументов равно нулю; раньше функция выдавала ошибку уровня E_WARNING.
fprintf Выбрасывает исключение ValueError, если [width] меньше нуля или больше PHP_INT_MAX; раньше функция выдавала ошибку уровня E_WARNING.
fprintf Выбрасывает исключение ValueError, если [precision] меньше нуля или больше PHP_INT_MAX; раньше функция выдавала ошибку уровня E_WARNING.
fprintf Выбрасывает исключение ArgumentCountError, если аргументов задано меньше, чем требуется; раньше функция выдавала ошибку уровня E_WARNING.
hebrevc Функцию удалили.
html_entity_decode Параметр encoding теперь принимает значение null.
htmlentities Параметр encoding теперь принимает значение null.
implode Функция больше не поддерживает передачу разделителя separator после массива array.
levenshtein До этой версии levenshtein нужно было вызывать с двумя или пятью аргументами.
levenshtein До этой версии, levenshtein возвращала значение -1, если одна из строк аргумента более 255 символов.
metaphone Функция возвращала false в случае возникновения ошибки.
money_format Функцию удалили.
number_format До этой версии функция number_format принимала один, два или четыре параметр, но не три.
parse_str Параметр result стал обязательным.
printf Функция больше не возвращает false, если возникла ошибка.
printf Выбрасывает исключение ValueError, если количество аргументов равно нулю; раньше функция выдавала ошибку уровня E_WARNING.
printf Выбрасывает исключение ValueError, если [width] меньше нуля или больше PHP_INT_MAX; раньше функция выдавала ошибку уровня E_WARNING.
printf Выбрасывает исключение ValueError, если [precision] меньше нуля или больше PHP_INT_MAX; раньше функция выдавала ошибку уровня E_WARNING.
printf Выбрасывает исключение ArgumentCountError, если аргументов задано меньше, чем требуется; раньше функция выдавала ошибку уровня E_WARNING.
soundex До этой версии при вызове функции с пустой строкой возвращалось значение false без особой причины.
sprintf Функция больше не возвращает false, если возникла ошибка.
sprintf Выбрасывает исключение ValueError, если количество аргументов равно нулю; раньше функция выдавала ошибку уровня E_WARNING.
sprintf Выбрасывает исключение ValueError, если [width] меньше нуля или больше PHP_INT_MAX; раньше функция выдавала ошибку уровня E_WARNING.
sprintf Выбрасывает исключение ValueError, если [precision] меньше нуля или больше PHP_INT_MAX; раньше функция выдавала ошибку уровня E_WARNING.
sprintf Выбрасывает исключение ArgumentCountError, если аргументов задано меньше, чем требуется; раньше функция выдавала ошибку уровня E_WARNING.
str_split Функция теперь выбросит ошибку ValueError, если значение аргумента length окажется меньше 1; раньше вместо этого функция вызывала ошибку уровня E_WARNING и возвращала false.
str_word_count Параметр characters теперь принимает значение null.
strcspn Параметр length теперь принимает значение null.
strip_tags Параметр allowed_tags теперь принимает значение null.
stripos Параметр needle теперь разрешает пустую строку.
stripos Функция перестала поддерживать передачу целого числа (int) в параметр needle.
stristr Параметр needle теперь разрешает пустую строку.
stristr Передача целого числа (int) в параметр needle больше не поддерживается.
strpos Параметр needle теперь разрешает пустую строку.
strpos Функция больше не поддерживает передачу целого числа (int) в параметр needle.
strrchr Параметр needle теперь разрешает пустую строку.
strrchr Передача целого числа (int) в needle больше не поддерживается.
strripos Параметр needle теперь разрешает пустую строку.
strripos Функция перестала поддерживать передачу целого числа (int) в параметр needle.
strrpos Параметр needle теперь разрешает пустую строку.
strrpos Передача целого числа (int) в параметр needle больше не поддерживается.
strspn Параметр length теперь принимает значение null.
strstr Параметр needle теперь разрешает пустую строку.
strstr Функция больше не поддерживает передачу целого числа (int) в параметр needle.
substr Параметр length теперь принимает значение null. При явной установке для параметра length значения null функция возвращает подстроку, которая заканчивается в конце строки; раньше возвращалась пустая строка.
substr Функция возвращает пустую строку там, где раньше возвращала false.
substr_compare Параметр length теперь принимает значение null.
substr_count Параметр length теперь принимает значение null.
substr_replace length теперь допускает значение null.
vfprintf Функция больше не возвращает false, если возникла ошибка.
vfprintf Выбрасывает исключение ValueError, если количество аргументов равно нулю; раньше функция выдавала ошибку уровня E_WARNING.
vfprintf Выбрасывает исключение ValueError, если [width] меньше нуля или больше PHP_INT_MAX; раньше функция выдавала ошибку уровня E_WARNING.
vfprintf Выбрасывает исключение ValueError, если [precision] меньше нуля или больше PHP_INT_MAX; раньше функция выдавала ошибку уровня E_WARNING.
vfprintf Выбрасывает исключение ArgumentCountError, если аргументов задано меньше, чем требуется; раньше функция выдавала ошибку уровня E_WARNING.
vprintf Функция больше не возвращает false, если возникла ошибка.
vprintf Выбрасывает исключение ValueError, если количество аргументов равно нулю; раньше функция выдавала ошибку уровня E_WARNING.
vprintf Выбрасывает исключение ValueError, если [width] меньше нуля или больше PHP_INT_MAX; раньше функция выдавала ошибку уровня E_WARNING.
vprintf Выбрасывает исключение ValueError, если [precision] меньше нуля или больше PHP_INT_MAX; раньше функция выдавала ошибку уровня E_WARNING.
vprintf Выбрасывает исключение ArgumentCountError, если аргументов задано меньше, чем требуется; раньше функция выдавала ошибку уровня E_WARNING.
vsprintf Функция больше не возвращает false, если возникла ошибка.
vsprintf Выбрасывает исключение ValueError, если количество аргументов равно нулю; раньше функция выдавала ошибку уровня E_WARNING.
vsprintf Выбрасывает исключение ValueError, если [width] меньше нуля или больше PHP_INT_MAX; раньше функция выдавала ошибку уровня E_WARNING.
vsprintf Выбрасывает исключение ValueError, если [precision] меньше нуля или больше PHP_INT_MAX; раньше функция выдавала ошибку уровня E_WARNING.
vsprintf Выбрасывает исключение ArgumentCountError, если аргументов задано меньше, чем требуется; раньше функция выдавала ошибку уровня E_WARNING.
wordwrap Функция выбросит исключение ValueError, если параметр break окажется пустой строкой; раньше выдавалась ошибка уровня E_WARNING и возвращалось значение false.
7.4.0chr Функция теперь выдаёт предупреждение, когда приводит к 0 значение параметра codepoint, которое невозможно интерпретировать как кодовую точку.
convert_cyr_string Функция устарела.
hebrevc Функция устарела.
implode Передача разделителя separator после массива array, т. е. сигнатура, которая досталась в наследство, устарела.
money_format Функция устарела. Вместо неё пользуются методом NumberFormatter::formatCurrency.
str_getcsv Функция теперь интерпретирует пустой параметр escape как требование отключить внутренний механизм экранирования. Раньше пустую строку функция рассматривала как значение по умолчанию для параметра.
strip_tags Параметр allowed_tags теперь как альтернативу принимает массив (array).
7.3.5substr_compare Параметр offset теперь может равняться параметру haystack.
7.3.0stripos Передача целого числа (int) в параметр needle устарела.
stristr Передача целого числа (int) в параметр needle устарела.
strpos Передача целого числа (int) в параметр needle устарела.
strrchr Передача целого числа (int) в needle объявлена устаревшей.
strripos Передача целого числа (int) в needle устарела.
strrpos Передача целого числа (int) в параметр needle устарела.
strstr Передача целого числа (int) в параметр needle устарела.
7.2.18substr_compare Параметр offset теперь может равняться параметру haystack.
7.2.0number_format Функцию number_format изменили, чтобы не возвращать значение -0. Раньше функция иногда возвращала значение -0, если параметр num равнялся -0.01.
parse_str Вызов функции parse_str без второго аргумента теперь выдаёт ошибку уровня E_DEPRECATED.
utf8_decode Функцию перенесли из модуля XML в ядро PHP. В предыдущих версиях функция была доступна только при установленном модуле XML.
utf8_encode Функцию перенесли из модуля XML в ядро PHP. В предыдущих версиях функция была доступна только при установленном модуле XML.
7.1.0str_shuffle Внутренний алгоритм генерации случайных чисел изменился с функции rand библиотеки libc на генератор на базе Вихря Мерсе́на.
stripos Добавили поддержку отрицательных значений параметром offset.
strpos Добавили поддержку отрицательных значений параметром offset.
substr_count Добавили поддержку отрицательных значений параметрами offset и length. Параметр length теперь допускает значение 0.

Нашли ошибку?

ИнструкцияИсправлениеСообщение об ошибке
+Добавить

Примечания пользователей

Пользователи ещё не добавляли примечания для страницы

AltStyle によって変換されたページ (->オリジナル) /