ODBC
La extensión ODBC ahora escapa el nombre de usuario y la contraseña en el caso donde
una cadena de conexión y un nombre de usuario/contraseña son pasados, y la cadena
debe ser agregada. Anteriormente, los valores de usuario que contenían valores que necesitaban ser escapados
podían crear una cadena de conexión malformada o inyectar valores desde
datos proporcionados por el usuario. Las reglas de escape deben ser idénticas al comportamiento de
DbConnectionOptions en la BCL .NET.
Estándar
glob() ahora devuelve un array vacío si todos los caminos de acceso están
restringidos por open_basedir.
Anteriormente, devolvía false
.
Además, ahora se emite una advertencia incluso si solo algunos caminos están restringidos por
open_basedir.
FilesystemIterator::__construct(): antes de PHP 8.2.0,
la constante FilesystemIterator::SKIP_DOTS
siempre estaba definida
y no podía ser desactivada. Para conservar el comportamiento anterior, la constante
debe ser definida explícitamente al usar el parámetro flags
.
El valor por defecto del parámetro flags
no ha sido modificado.
strtolower(),
strtoupper(),
stristr(),
stripos(),
strripos(),
lcfirst(),
ucfirst(),
ucwords(),
y str_ireplace() ya no son sensibles a la configuración regional.
Ahora realizan una conversión ASCII de mayúsculas y minúsculas, como si la configuración regional fuera "C".
Versiones localizadas de estas funciones están disponibles en la extensión MBString.
Además, array_change_key_case() y la ordenación con
SORT_FLAG_CASE
ahora también usan la conversión ASCII.
str_split() ahora devuelve un array vacío para una string vacía.
Anteriormente, devolvía un array con una sola cadena vacía como entrada.
mb_str_split() no se ve afectada por este cambio ya que
ya se comportaba de esa manera.
ksort() y krsort() ahora realizan comparaciones numéricas de cadenas de caracteres
bajo SORT_REGULAR
usando las reglas estándar de PHP 8.
var_export() ya no omite la barra invertida inicial para las clases exportadas,
es decir, ahora están completamente calificadas.