Registro de cambios

A las funciones de las extensiones incluidas se han realizado los siguientes cambios.

VersionFunctionDescription
PHP 7.0.15, PHP 7.1.1get_defined_functionsSe ha añadido el parámetro exclude_disabled.
PHP 5.3.19imagecreatefromxpmimagecreatefromxpm está disponible en Windows.
8.0.0 / 1.18.0ZipArchive::getStatusStringEste método puede ser llamado en un archivo cerrado.
7.4.0get_magic_quotes_runtimeEsta función es obsoleta.
 implodePasar el parámetro glue después de el parámetro pieces (es decir, sin utilizar el orden documentado de los parámetros) es obsoleto.
 SplFileObject::fgetcsvEl parámetro escape ahora también acepta un string vacío para desactivar el mecanismo de escape propio.
 SplFileObject::fwriteLa función ahora devuelve FALSE en vez de cero en caso de error.
 SplFileObject::getCsvControlEl carácter de escape puede ser ahora un string vacío.
 SplFileObject::setCsvControlEl parámetro escape ahora acepta un string vacío para desactivar el mecanismo de escape.
7.3.0apache_request_headersEsta función se hizo disponible en el SAPI de FPM.
 array_unshiftEsta función ahora puede ser llamada con un solo parámetro. Anteriormente, se requerían al menos dos parámetros.
 curl_getinfoIntrodujo CURLINFO_CONTENT_LENGTH_DOWNLOAD_T, CURLINFO_CONTENT_LENGTH_UPLOAD_T, CURLINFO_HTTP_VERSION, CURLINFO_PROTOCOL, CURLINFO_PROXY_SSL_VERIFYRESULT, CURLINFO_SCHEME, CURLINFO_SIZE_DOWNLOAD_T, CURLINFO_SIZE_UPLOAD_T, CURLINFO_SPEED_DOWNLOAD_T, CURLINFO_SPEED_UPLOAD_T, CURLINFO_APPCONNECT_TIME_T, CURLINFO_CONNECT_TIME_T, CURLINFO_FILETIME_T, CURLINFO_NAMELOOKUP_TIME_T, CURLINFO_PRETRANSFER_TIME_T, CURLINFO_REDIRECT_TIME_T, CURLINFO_STARTTRANSFER_TIME_T, CURLINFO_TOTAL_TIME_T.
 getallheadersEsta función se hizo disponible en el SAPI de FPM.
 is_countableis_countable ha sido añadido.
 setcookieUna alternativa que soporta un array options ha sido añadida. Esta alternativa soporta también la configuración del atributo de la cookie de SameSite.
 setrawcookieUna alternativa que soporta un array options ha sido añadida. Esta alternativa soporta también la configuración del atributo de la cookie de SameSite.
7.3ldap_exopSupport for serverctrls added
 ldap_exop_passwdSupport for serverctrls added
 ldap_modify_batchSupport for serverctrls added
 ldap_searchSe añadión soporte para serverctrls
7.2.19, 7.3.6SplFileObject::__toStringCambiado de un alias de SplFileObject::current a un alias de SplFileObject::fgets.
7.2.0array_uniqueSi el parámetro sort_flags es SORT_STRING, el array anterior ha sido copiado y se han eliminado los elementos no únicos (sin empaquetar el array posteriormente), pero ahora se construye un nuevo array añadiendo los elementos únicos. Esto puede dar lugar a diferentes índices numéricos.
 countcount generará una advertencia si se pasan tipos contables no válido al parámetro array_or_countable.
 date_parse_from_formatEl elemento de zone devuelto representa ahora segundos en lugar de minutos, y su signo está invertido. Por ejemplo -120 es ahora 7200.
 hash_initDevuelve HashContext en lugar de recurso.
 hash_initUso de funciones de hash no criptográficas (adler32, crc32, crc32b, fnv132, fnv1a32, fnv164, fnv1a64, joaat) con HASH_HMAC ha sido deshabilitado.
 is_objectis_object ahora devuelve TRUE para objetos no seriados sin una definición de clase (clase de __PHP_Incomplete_Class). Anteriormente FALSE era devuelto.
 session_abortEl tipo de retorno de esta función es bool ahora. Anteriormente, ha sido void.
 SQLite3::openBlobThe flags parameter has been added, allowing to write BLOBs; formerly only reading was supported.
7.1.0array_randEl algoritmo de aleatorización interno se ha cambiado para usar el generador de números aleatorios Mersenne Twister en lugar de la función libc rand.
 file_get_contentsSe añadió soporte para valores negativos de offset.
 get_headersEl parámetro context fue agregado.
 iconv_strposAñadido soporte para offsets negativos.
 mb_ereg_replaceEl modificador e está ahora obsoleto.
 mb_eregi_replaceEl modificador e está ahora obsoleto.
 output_reset_rewrite_varsAntes de PHP 7.1.0, la variables reescritas por output_add_rewrite_var utilizaban el mismo buffer de salida del módulo de sesión trans sid. Desde PHP 7.1.0, se usa un buffer de salida dedicado y output_reset_rewrite_vars solo elimina las variables reescritas definidas por output_add_rewrite_var.
 pcntl_signalAs of PHP 7.1.0 the handler callback is given a second argument containing the signinfo of the specific signal. This data is only supplied if the operating system has the signinfo_t structure. If the OS does not implement siginfo_t NULL is supplied.
 pcntl_signal_get_handlerpcntl_signal_get_handler has been added.
 pg_fetch_allEl parametro result_type fue agregado.
 pg_last_noticeEl parameto option fue agregado.
 pg_selectThe result_type parameter was added.
 unserializeEl elemento allowed_classes de options) es ahora estrictamente tipado, es decir: si cualquier cosa distinta de un array o un boolean es proporcionada, unserialize retornará FALSE y lanzará un E_WARNING.
7.0.16, 7.1.2dns_get_recordAdded support for CAA record type.
 fopenSe añadió la opción 'e'.
7.0.11iconv_substrSi la longitud de caracteres de str es igual a offset, devolverá un string vacío. Antes de ésta versión, un FALSE era devuelto en éste caso.
7.0.7curl_setoptSe introdujeron CURL_HTTP_VERSION_2, CURL_HTTP_VERSION_2_PRIOR_KNOWLEDGE, CURL_HTTP_VERSION_2TLS, CURL_REDIR_POST_301, CURL_REDIR_POST_302, CURL_REDIR_POST_303, CURL_REDIR_POST_ALL, CURL_VERSION_KERBEROS5, CURL_VERSION_PSL, CURL_VERSION_UNIX_SOCKETS, CURLAUTH_NEGOTIATE, CURLAUTH_NTLM_WB, CURLFTP_CREATE_DIR, CURLFTP_CREATE_DIR_NONE, CURLFTP_CREATE_DIR_RETRY, CURLHEADER_SEPARATE, CURLHEADER_UNIFIED, CURLMOPT_CHUNK_LENGTH_PENALTY_SIZE, CURLMOPT_CONTENT_LENGTH_PENALTY_SIZE, CURLMOPT_MAX_HOST_CONNECTIONS, CURLMOPT_MAX_PIPELINE_LENGTH, CURLMOPT_MAX_TOTAL_CONNECTIONS, CURLOPT_CONNECT_TO, CURLOPT_DEFAULT_PROTOCOL, CURLOPT_DNS_INTERFACE, CURLOPT_DNS_LOCAL_IP4, CURLOPT_DNS_LOCAL_IP6, CURLOPT_EXPECT_100_TIMEOUT_MS, CURLOPT_HEADEROPT, CURLOPT_LOGIN_OPTIONS, CURLOPT_PATH_AS_IS, CURLOPT_PINNEDPUBLICKEY, CURLOPT_PIPEWAIT, CURLOPT_PROXY_SERVICE_NAME, CURLOPT_PROXYHEADER, CURLOPT_SASL_IR, CURLOPT_SERVICE_NAME, CURLOPT_SSL_ENABLE_ALPN, CURLOPT_SSL_ENABLE_NPN, CURLOPT_SSL_FALSESTART, CURLOPT_SSL_VERIFYSTATUS, CURLOPT_STREAM_WEIGHT, CURLOPT_TCP_FASTOPEN, CURLOPT_TFTP_NO_OPTIONS, CURLOPT_UNIX_SOCKET_PATH, CURLOPT_XOAUTH2_BEARER, CURLPROTO_SMB, CURLPROTO_SMBS, CURLPROXY_HTTP_1_0, CURLSSH_AUTH_AGENT y CURLSSLOPT_NO_REVOKE.
7.0.0array_columnSe añadió la capacidad de que el parámetro input sea un array de objetos.
 Aserciónassert is now a language construct and not a function. assertion can now be an expression. The second parameter is now interpreted either as an exception (if a Throwable object is given), or as the description supported from PHP 5.4.8 onwards.
 curl_setoptSe ha eliminado el soporte para inhabilitar la opción CURLOPT_SAFE_UPLOAD. Todas las subidas de ficheros de curl deben emplear CURLFile.
 defineEstán permitidos valores array.
 dirnameAñadido el parámetro opcional levels.
 dldl está deshabilitado en PHP-FPM.
 getrusageEsta función ahora está soportada en Windows
 gmmktimeEl parámetro is_dst ha sido eliminado.
 imagepsbboxSe elimió el soporte para T1Lib de PHP, y así la eliminación de esta función.
 imagepsencodefontSe elimió el soporte para T1Lib de PHP, y así la eliminación de esta función.
 imagepsextendfontSe elimió el soporte para T1Lib de PHP, y así la eliminación de esta función.
 imagepsfreefontSe elimió el soporte para T1Lib de PHP, y así la eliminación de esta función.
 imagepsloadfontSe elimió el soporte para T1Lib de PHP, y así la eliminación de esta función.
 imagepsslantfontSe elimió el soporte para T1Lib de PHP, y así la eliminación de esta función.
 imagepstextSe elimió el soporte para T1Lib de PHP, y así la eliminación de esta función.
 is_numericLas cadenas en notación hexadecimal (p.ej. 0xf4c3b00c) ya no son consideradas como cadenas numéricas, esto es, is_numeric ahora devuelve FALSE.
 keyarray ahora siempre se pasa por el valor. Antes de esta versión, se pasaba por referencia si era posible, y por el valor de lo contrario.
 listLos strings ya no pueden ser desempaquetados.
 listLas expresiones de list ya no pueden estar completamente vacías.
 listEl orden en el que se realizan las operaciones de asignación ha cambiado.
 mktimeEl parámetro is_dst ha sido eliminado.
 ob_startEn caso de utilizar ob_start dentro de una retrollamada del búfer de salida, esta función ya no emitirá un E_ERROR, si no un E_RECOVERABLE_ERROR, permitiendo a los manejadores de errores propios capturar tales errores.
 parse_ini_fileLas almohadillas (#) ya no se reconocen como comentarios.
 preg_replaceSe ha eliminado el soporte para el modificador /e. Emplee preg_replace_callback en su lugar.
 session_startSe añadió el parámetro options.
 set_exception_handlerCambiado el tipo de parámetro pasado a exception_handler de Exception a Throwable
 setlocaleSe ha eliminado el soporte para el parámetro category pasado como string. En esta versión, solamente se pueden utilizar las constantes LC_*.
 shmop_closeEl tipo de shmid ha sido cambiado de int a resource.
 shmop_deleteEl tipo de shmid ha sido cambiado de int a resource.
 shmop_openEl tipo devuelto de shmop_open ha sido cambiado de int a resource.
 shmop_readEl tipo de shmid ha sido cambiado de int a resource.
 shmop_sizeEl tipo de shmid ha sido cambiado de int a resource.
 shmop_writeEl tipo de shmid ha sido cambiado de int a resource.
 substrSi la longitud de caracteres de string es igual a start, se devolverá una cadena vacía. Antes de esta versión, en este caso se devolvía FALSE.
 unserializeSe añadió el parámetro options.
 IntlDateFormatter::setTimeZoneIdEsta función ha sido eliminada.
5.6.25, 7.0.10SplFileObject::getCsvControlSe añadió el carácter de escape al array devuelto.
5.6.16mysqli::real_connectSe añadió la bandera MYSQLI_CLIENT_SSL_DONT_VERIFY_SERVER_CERT para el Controlador Nativo de MySQL
5.6.12gd_infoSe añadió WebP Support.
5.6.6json_encodeSe añadió la opción JSON_PRESERVE_ZERO_FRACTION del parámetro option.
5.6.5cryptCuando se da la cadena de fallo "*0" como salt, ahora se devuelve "*1" por consistencia con otras implementaciones de crypt. Antes de esta versión, PHP 5.6 devolvía incorrectamente un hash DES.
5.6.3packSe añadieron los códigos "q", "Q", "J" y "P" para habilitar el trabajo con número de 64 bit.
5.6.1parse_ini_fileSe añadió el nuevo modo INI_SCANNER_TYPED.
 sem_acquireSe añadió el parámetro $nowait.
5.6.0array_fillnum ahora puede ser cero. Anteriormente, se requería que num fuera maoyor que cero.
 array_filterSe añadió el parámetro opcional flag y las constantes ARRAY_FILTER_USE_KEY y ARRAY_FILTER_USE_BOTH
 cryptSe emite una advertencia de seguridad E_NOTICE si se omite salt.
 curl_setoptSe eliminó CURLOPT_CLOSEPOLICY y sus valores asociados.
 curl_setoptCURLOPT_SAFE_UPLOAD ahore es TRUE de forma predeterminada.
 hash_algosSe añadió soprte para gost-crypto. Este implementa la función de hash GOST empleando las tablas CryptoPro S-box como está especificado en la RFC 4357, sección 11.2.
 html_entity_decodeEl valor predeterminado para el parámetro encoding se cambió para que fuera el valor de la opción de configuración default_charset.
 htmlentitiesEl valor predeterminado para el parámetro encoding se cambió para que fuera el valor de la opción de configuración default_charset.
 htmlspecialcharsEl valor predeterminado para el parámetro encoding se cambió para que fuera el valor de la opción de configuración default_charset.
 json_decodeYa no se aceptan variantes que no estén en minúsculas de los literales true, false y null como entradas válidas, por lo que se generarán advertencias.
 mb_regex_encodingLa codificación predeterminada se cambió a UTF-8. Anteriormente era EUC-JP.
 mcrypt_create_ivMCRYPT_DEV_URANDOM ahora es el valor predetermniado de source.
 mcrypt_decryptTamaños incorrectos en key y iv ya no son admitidos. mcrypt_decrypt emitirá una advertencia y devolverá FALSE si los datos de entrada son incorrectos. Anteriormente la clave y el IV eran rellenados con bytes '\0' hasta el siguiente tamaño válido.
 mcrypt_encryptTamaños incorrectos en key y iv ya no son admitidos. mcrypt_encrypt emitirá una advertencia y devolverá FALSE si los datos de entrada son incorrectos. Anteriormente la clave y el IV eran rellenados con bytes '\0' hasta el siguiente tamaño válido.
 pg_connectEl soporte para la constante PGSQL_CONNECT_ASYNC se ha añadido con el parametro connect_type.
 pg_convertYa no es experimental. Se admiten los tipos de datos boolean/NULL. Los tipos de datos desconocidos/no soportados son escapados sin validación. Se podría emplear pg_convert con cualquier tipo de dato.
 pg_deleteYa no es experimental. Se añadió la constante PGSQL_DML_ESCAPE, se admiten los tipos de datos TRUE/FALSE y NULL.
 pg_insertUnless PGSQL_DML_STRING is passed, the function now returns the connection resource instead of TRUE on success.
 pg_insertNo longer experimental. Added PGSQL_DML_ESCAPE constant, TRUE/FALSE and NULL data type support.
 pg_lo_seekAdded PostgreSQL 9.3's 64bit large object support. Both client and server must support PostgreSQL 9.3 and PHP must be 64bit build to use 64bit large object.
 pg_lo_tellAdded PostgreSQL 9.3's 64bit large object support. Both client and server must support PostgreSQL 9.3 and PHP must be 64bit build to use 64bit large object.
 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_dataNo longer experimental. Added "is enum" as default attribute. extended flag is added.
 pg_selectNo longer experimental. Added PGSQL_DML_ESCAPE constant, TRUE/FALSE and NULL data type support.
 pg_updateYa no es experimental. Se ha añadido la constante PGSQL_DML_ESCAPE, TRUE/FALSE y NULL son los tipo de datos soportados.
 stream_socket_enable_cryptocrypto_type ahora es opcional.
 unserializeManipular los datos serializados reemplazando C: con O: para forzar la instanciación de objetos sin llamar al constructor ahora fallará.
 ReflectionClass::newInstanceWithoutConstructorAhora todas las clases internas pueden ser instanciadas, excepto aquellas declaradas final.
5.5.22, 5.6.6flockSe añadió soporte para el parámetro wouldblock en Windows.
 SplFileObject::flockAñadido soporte para el parámetro wouldblock en Windows.
5.5.21, 5.6.5SplFileObject::fputcsvSe añadió el parámetro escape.
5.5.21cryptCuando se da la cadena de fallo "*0" como salt, ahora se devuelve "*1" por consistencia con otras implementaciones de crypt. Antes de esta versión, PHP 5.5 (y ramificaciones anteriores) devolvía incorrectamente un hash DES.
5.5.19/5.6.3imagescaleSe ha arreglado el cálculo de la altura si new_height era negativo o se omitía; antes de estas versiones, la proporción de aspecto no se mantenía correctamente.
5.5.11substr_comparelength ahora puede ser 0.
5.5.10DateTimeZone::__constructEl parámetro timezone acepta valores de índice.
5.5.8DatePeriod::__constructEl tipo de end se cambió a DateTimeInterface. Anteriormente era DateTime.
5.5.7apache_request_headersEstá función ahora está disponible en el sevidor CLI.
 apache_response_headersEstá función ahora está disponible en el sevidor CLI.
 getallheadersEstá función ahora está disponible en el sevidor CLI.
5.5.4fputcsvSe añadió el parámetro escape_char
5.5.3/5.4.19pg_deleteLa inyección SQL directa a table_name y la inyección SQL indirecta a identificadores son fijasinjection.
 pg_insertDirect SQL injection to table_name and Indirect SQL injection to identifiers are fixed.
 pg_selectDirect SQL injection to table_name and Indirect SQL injection to identifiers are fixed.
 pg_updateLa inyección directa SQL a table_name y la inyección indirecta SQL a los indetificadores a sido arreglada.
5.5.2DOMDocument::schemaValidateSe añadió el parámetro flags
 DOMDocument::schemaValidateSourceSe añadió el parámetro flags
5.5.1hex2binSe emite una advertencia si el string de entrada es un string hexadecimal no válido.
 pg_unescape_byteaA warning is thrown if the input string is invalid.
 session_set_save_handlerSe añadió el parámetro opcional create_sid.
5.5.0/PECL 3.0.0IntlDateFormatter::createSe permite un objeto IntlCalendar para calendar. Los objetos de tipo IntlTimeZone y DateTimeZone están permitidos para timezone. Los identificadores de zonas horarias válidos (incluyendo string vacíos) ya no están permitidos para timezone. Si se proporciona NULL a timezone, el identificador de la zona horaria dado por date_default_timezone_get se usará en lugar del predeterminado de ICU.
 IntlDateFormatter::formatSe añadió el soporta para proporcionar objetos IntlCalendar al parámetro value.
 IntlDateFormatter::setCalendarAhora es posible pasar un objeto IntlCalendar.
5.5.0DatePeriod::__constructstart se cambió a DateTimeImmutable. Anteriormente era DateTime.
 curl_getinfoIntrodujo CURLINFO_RESPONSE_CODE, CURLINFO_HTTP_CONNECTCODE, CURLINFO_HTTPAUTH_AVAIL, CURLINFO_PROXYAUTH_AVAIL, CURLINFO_OS_ERRNO, CURLINFO_NUM_CONNECTS, CURLINFO_SSL_ENGINES, CURLINFO_COOKIELIST, CURLINFO_FTP_ENTRY_PATH, CURLINFO_APPCONNECT_TIME, CURLINFO_CONDITION_UNMET, CURLINFO_RTSP_CLIENT_CSEQ, CURLINFO_RTSP_CSEQ_RECV, CURLINFO_RTSP_SERVER_CSEQ y CURLINFO_RTSP_SESSION_ID.
 curl_setoptSe introdujo CURLOPT_SHARE.
 curl_setoptSe añadió el recurso cURL como el primer parámetro de la llamada de retorno CURLOPT_PROGRESSFUNCTION.
 emptyempty ahora soporta expresiones, en vez de únicamente variables.
 imagerotateEsta función ahora se ve afectada por el método de interpolación establecido por la función imagesetinterpolation.
 iterator_to_arrayiterator_to_array da soporte a tipos de claves diferentes a integer y string cuando el parámetro use_keys está habilitado.
 json_encodeSe añadió el parámetro depth.
 mysql_connectEsta función generará un error de nivel E_DEPRECATED.
 mysql_db_nameLa función mysql_list_dbs es obsoleta, por lo que emite un error de nivel E_DEPRECATED.
 mysql_pconnectEsta función generará un error de nivel E_DEPRECATED.
 mysql_tablenameLa función mysql_tablename es obsoleta, por lo que emite un error de nivel E_DEPRECATED.
 packSe añadió el código "Z" con funcionalidad equivalente a "a" por compatibilidad con Perl.
 php_logo_guidphp_logo_guid ha sido eliminada de PHP.
 phpinfoLos GUIDs de logos fueron reemplazados con URIs de datos, por lo que desactivar ahora expose_php no tiene efecto sobre el resutaldo de phpinfo(). Los créditos ahora también han sido embebidos en la salida misma en vez mediante enlaces.
 preg_replaceEl modificador /e está obsoleto. Utilice preg_replace_callback en su lugar. Véase la documentación de PREG_REPLACE_EVAL para obtener información adicional sobre riesgos de seguridad.
 set_error_handlererror_handler ahora acepta NULL.
 set_exception_handlerAnteriormente, si se pasaba NULL, esta función devolvía TRUE. Devuelve el manejador anterior desde PHP 5.5.0.
 setcookieAhora se incluye un atributo Max-Age en la cabecera Set-Cookie enviada al cliente.
 setrawcookieAhora se incluye un atributo Max-Age en la cabecera Set-Cookie enviada al cliente.
 unpackCambios realizados para poner esta función en línea con Perl: El código "a" ahora guarda bytes NULL sobrantes de cola. El código "A" ahora elimina todos los espacios en blanco ASCII sobrantes de cola (espacios, tabulaciones, nuevas líneas, retorno de carro, y bytes NULL). Se añadió en código "Z" para cadenas rellenadas con NULL, y elimina los bytes NULL sobrantes de cola.
 zend_logo_guidzend_logo_guid ha sido eliminada de PHP.
 IntlDateFormatter::setTimeZoneIdEsta función está obsoleta.
 mysqli::commitSe añadieron los parámetros flags y name.
 mysqli::optionsSe añadieron las opciones MYSQLI_SERVER_PUBLIC_KEY y MYSQLI_SERVER_PUBLIC_KEY.
 mysqli::rollbackSe añadieron los parámetros flags y name.
 SoapClient::SoapClientNueva opción ssl_method.
5.4.32, 5.5.16ucwordsSe añadió el parámetro delimiters.
5.4.8AserciónThe description parameter was added. The description is also now provided to a callback function in ASSERT_CALLBACK mode as the fourth argument.
 mb_strcutPasar NULL al parámetro length extrae todos los bytes hasta el final de string. Antes de esta versión, NULL era tratado de igual modo que 0.
 mb_substrPasar NULL al parámetro length extrae todos los caracteres hasta el final de string. Antes de esta versión, NULL era tratado de igual modo que 0.
5.4.7curl_getinfoIntrodujo CURLINFO_PRIMARY_IP, CURLINFO_PRIMARY_PORT, CURLINFO_LOCAL_IP y CURLINFO_LOCAL_PORT.
 parse_urlArreglado el reconocimiento de host cuando scheme es omitido y está presente un separador de componentes que lo encabeza.
5.4.4hex2binSe emite una advertencia si la cadena de entrada tiene una longitud impar. En PHP 5.4.0 la cadena era aceptada de forma silenciosa, pero el último byte era truncado.
5.4.0/PECL 2.0.0b1idn_to_asciiSe añadieron los parámetros variant y idna_info; y el soporte para UTS #46.
 idn_to_utf8Se añadieron los parámetros variant y idna_info; y el soporte para UTS #46.
5.4.0DOMDocument::loadHTMLSe añadió el parámero options.
 DOMDocument::loadHTMLFileSe añadió el parámero options.
 apache_child_terminateEsta función está disponible bajo FastCGI. Anteriormente, estaba soportada solo cuando había sido instalado un módulo PHP en Apache.
 apache_request_headersEsta función está disponible sobre FastCGI. Anteriormente, sólo estaba soportada cuando PHP se instalaba como módulo de Apache o mediante el módulo de servidor NSAPI en servidores web Netscape/iPlanet/SunONE.
 apache_response_headersEsta función está disponible sobre FastCGI. Anteriormente, sólo estaba soportada cuando PHP se instalaba como módulo de Apache o mediante el módulo de servidor NSAPI en servidores web Netscape/iPlanet/SunONE.
 array_combineVersiones previas emiten un E_WARNING y devuelven FALSE para arrays vacíos.
 array_multisortSe añadieron SORT_NATURAL y SORT_FLAG_CASE a array1_sort_flags como posibles banderas de ordenación.
 date_default_timezone_getLa zona horaria ya no se adivina de la información disponible a través del sistema operativo, la zona horaria adivinada no puede invocarse.
 date_default_timezone_getLa variable de entorno TZ ya no se usa para adivinar la zona horaria.
 debug_backtraceAñadido el parámetro opcional limit.
 debug_print_backtraceAñadido el parámetro opcional limit.
 define_syslog_variablesEsta función ha sido eliminada de PHP.
 dns_get_recordAdded raw parameter.
 emptyVerificación de índices no numéricos de strings devuelve TRUE.
 error_reportingAhora E_STRICT es parte de E_ALL.
 filter_input_arraySe añadió el parámetro add_empty.
 filter_var_arraySe añadió el parámetro add_empty.
 get_html_translation_tableSe añadieron las constantes ENT_HTML401, ENT_XML1, ENT_XHTML y ENT_HTML5.
 get_html_translation_tableEl valor por defecto para el parámetro encoding se cambió a UTF-8.
 get_magic_quotes_gpcSiempre devuelve FALSE debido a que la característica de comillas mágicas ha sido eliminada de PHP.
 get_magic_quotes_runtimeSiempre devuelve FALSE debido a que la característica de comillas mágicas ha sido eliminada de PHP.
 getallheadersEsta función está disponible sobre FastCGI. Anteriormente, sólo estaba soportada cuando PHP se instalaba como módulo de Apache o mediante el módulo de servidor NSAPI en servidores web Netscape/iPlanet/SunONE.
 gzcompressSe añadió el parámetro encoding.
 gzdeflateSe añadió el parámetro encoding.
 gzencodeFORCE_DEFLATE ahora genera una salida que cumple el RFC 1950.
 hashEl algoritmo tiger ahora utiliza orden de byte «big-endian». Véase también el ejemplo de más abajo.
 hash_algosSe añade soporte para joaat, fnv132 y para fnv164. Soporte para Salsa10 y Salsa20 fué eliminado.
 html_entity_decodeSe añadieron las constantes ENT_HTML401, ENT_XML1, ENT_XHTML y ENT_HTML5.
 html_entity_decodeLa codificación predeterminada se cambió de ISO-8859-1 a UTF-8.
 htmlentitiesEl valor por defecto del parámetro encoding se cambió a UTF-8.
 htmlentitiesSe añadieron las constantes ENT_SUBSTITUTE, ENT_DISALLOWED, ENT_HTML401, ENT_XML1, ENT_XHTML y ENT_HTML5.
 htmlspecialcharsSe añadieron las constantes ENT_SUBSTITUTE, ENT_DISALLOWED, ENT_HTML401, ENT_XML1, ENT_XHTML y ENT_HTML5.
 htmlspecialcharsEl valor predeterminado del parámetro encoding se cambió a UTF-8.
 htmlspecialchars_decodeFueron agregadas las constantes ENT_HTML401, ENT_XML1, ENT_XHTML y ENT_HTML5.
 http_build_querySe agregó el parámetro enc_type.
 imagecolorsetSe añadió el parámetro alpha.
 imagegd2Se añadió soporte para pasar un resource de flujo a to.
 imagejpegSe añadió soporte para pasar un resource de flujo a to.
 imagejpegSe deshabilitó el paso de un string vacío a filename para saltar este argumeto.
 imagewebpSe añadió soporte para pasar un resource de flujo a to.
 issetComprobación de indices no numéricos de strings ahora retorna FALSE.
 json_decodeSe añadió el parámetro options.
 json_encodeSe añadió al parámetro options las constantes JSON_PRETTY_PRINT, JSON_UNESCAPED_SLASHES, y JSON_UNESCAPED_UNICODE.
 mb_encode_numericentityAñadido el parámetro is_hex.
 mysqli_get_cache_statsSe eliminó mysqli_get_cache_stats.
 number_formatEsta función ahora admite múltiples bytes en dec_point y thousands_sep. En versiones anteriors solamente se utilizaba el primer byte de cada separador.
 ob_startUn tamaño de segmento de 1 ahora resulta en segmentos de 1 byte que se van a enviar al búfer de salida.
 ob_startEl tercer parámetro de ob_start se cambió de un parámetro boolean llamado erase (el cual, si se establecía a FALSE, prevenía al búfer de salida de ser eliminado hasta el final de la ejecución del script) a un parámetro integer llamado flags. Desafortunadamente, esto resulta en una rotura de compatibilidad de la API para código escrito antes de PHP 5.4.0 que use el tercer parámetro. Véase el ejemplo de banderas para saber cómo manejar esto con código que necesite ser compatible con ambas.
 openssl_decryptraw_output se cambió a options.
 openssl_encryptraw_output se cambió a options.
 preg_match_allEl parámetro matches ahora es opcional.
 scandirSe añadieron las constantes de sorting_order. En versiones anteriores, cualquir valor distinto de cero ocasionaba un ordenamiento descendente. Por lo tanto, para todas las versiones de PHP, use 0 para el orden ascendente, y 1 para el orden descendente. No existía una opción para el comportamiento de SCANDIR_SORT_NONE antes de PHP 5.4.0.
 session_set_save_handlerSe añadió SessionHandlerInterface para la implementación de gestores de sesión y SessionHandler para exponer gestores de sesión internos de PHP.
 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.
 sortSe añadió el soporte para SORT_NATURAL y SORT_FLAG_CASE como sort_flags
 PDOStatement::getColumnMetaSe añadió el soporte para el controlador PDO_DBLIB
 Phar::setStubSe añadió el parámetro len.
 PharData::setStubSe añadió el parámetro len.
 SimpleXMLElement::getDocNamespacesSe añadió el parámetro from_root.
 SoapClient::SoapClientNueva opción keep_alive.
5.4grapheme_substrSi se proporciona length y es positivo, y el argumento string es más corto que la longitud especificada, se devuelve el resto de la cadena de acuerdo al parámetro start. Anteriormente devolvía FALSE.
5.3.9DateTime::createFromFormatSe añadió el especficador + para format.
 dldl está deshabilitado en PHP-FPM, aunque se desaconseja.
 is_aSe añadió el parámetro allow_string
 is_subclass_ofSe añadió el parámetro allow_string
5.3.7cryptSe añadieron los modos de Blowfish $2x$ y $2y$ para tratar con ataques de bit alto potenciales.
 curl_getinfoIntrodujo CURLINFO_REDIRECT_URL.
 is_subclass_ofSe añadió el soporte para class_name para trabajar con interfaces
5.3.6DateTime::modifyLas sentencias de fecha/hora absolutas ahora toman efecto. Anteriormente, sólo se utilizaban las partes relativas.
 DOMDocument::saveHTMLEl parámetro node fue añadido.
 array_productEl producto de un array vacío ahora es 1, mientras que antes esta función devolvía 0 para un array vacío.
 debug_backtraceSe cambió el parámetro provide_object a options y se añadió la opción adicional DEBUG_BACKTRACE_IGNORE_ARGS.
 debug_print_backtraceAñadido el parámetro opcional options.
 preg_matchDevuelve FALSE si offset es mayor que la longitud de subject.
 preg_match_allDevuelve FALSE si offset es mayor que la longitud de subject.
 PDO_MYSQL DSNAntes de la versión 5.3.6, charset era ignorado.
5.3.4copySe cambió el parámetro context para que realmente tenga efecto. Anteriormente, se ignoraba cualquier context.
 get_html_translation_tableSe añadió el parámetro encoding.
 mt_randEmite un error de nivel E_WARNING y devuelve FALSE si max < min.
 rawurlencodeLos caracteres con tilde ya no son condificados al usar rawurlencode con EBCDIC en cadenas.
 sleepAntes de PHP 5.3.4, en Windows, sleep siempre devuelve NULL cuando el sueño ha sucedido, si tener en cuenta si el sueño fue interrumpido o no.
 strip_tagsstrip_tags ignora las etiquetas de autocierre de XHTML en allowable_tags.
 IntlDateFormatter::formatSe añadió el soporte para proporcionar objetos de la clase DateTime al parámetro value.
 mysqli_driver::$report_modeEl cambio de modo de notificación ahora es por solicitud, en vez de por proceso.
5.3.3DOMXPath::evaluateSe añadió el parámetro registerNodeNS.
 DOMXPath::querySe añadió el parámetro registerNodeNS.
 json_encodeSe añadió al parámetro option la constante JSON_NUMERIC_CHECK.
 ldap_sasl_bindSe añadió soporte en Windows.
 openssl_decryptSe añadió el parámetro iv.
 openssl_encryptSe añadió el parámetro iv.
 parse_urlEliminado el E_WARNING que era producido cuando fallaba el análisis de la URL.
5.3.2 (PECL OCI8 1.4)oci_set_prefetchAntes de esta versión, rows debe ser >= 1.
5.3.2cryptCorregido el comportamiento de Blowfish sobre rondas no válidas para devolver el string "failure" ("*0" or "*1"), en lugar de caer al DES.
 cryptAgregado el crypt SHA-256 y SHA-512 basado en la implementación de Ulrich Drepper.
 flockSe eliminó la liberación del bloqueo automática al cerrarse el manejador del recurso. La liberación del bloqueo ahora siempre tiene que realizarse manualmente.
 gmp_initLa base fue extendidad de 2 a 36, a 2 a 62 y -2 a -36.
 gmp_strvalLa base fue extendida de 2 a 36, a 2 a 62 y -2 a -36.
 imap_appendSe añadió el soporte de INTERNALDATE para imap_append.
 imap_openSe añadió params
 SplFileObject::flockSe eliminó el desbloqueo automático cuando se cierra el manejador de recursos del archivo. El desbloqueo ahora siempre tiene que hacerse manualmente.
5.3.1get_defined_constantsSólo para Windows: las constantes fundamentales se clasifican en Core, previamente mhash.
 ibase_querySi no hay rows afectados, la función ahora devuelve TRUE en caso de éxito, donde anteriormente devolvía 0 (un cero seguido por un espacio en blanco).
 renamerename ahora puede renombrar ficheros a través de controladores de Windows.
5.3.0 (PECL OCI8 1.3.4)oci_set_prefetchAntes de esta versión, la precarga estaba limitada al menor valor de rows filas y 1024 * rows bytes. La restricción del tamaño de bytes ahora ha sido eliminada.
5.3.0DateTime::__constructSi time contiene un formato de fecha/hora no válido, se lanzará una excepción. Anteriormente se emitía un error.
 DateTime::modifySe ha cambiado el valor devuelto en caso de éxito de NULL a DateTime.
 DateTime::setDateSe ha cambiado el valor devuelto en caso de éxito de NULL a DateTime.
 DateTime::setISODateSe ha cambiado el valor devuelto en caso de éxito de NULL a DateTime.
 DateTime::setTimeSe ha cambiado el valor devuelto en caso de éxito de NULL a DateTime.
 DateTime::setTimezoneSe ha cambiado el valor devuelto en caso de éxito de NULL a DateTime.
 DateTimeZone::getTransitionsSe añadieron los parámetros opcionales timestamp_begin y timestamp_end.
 DateTimeZone::listIdentifiersAñadidos los parámteros opcionales what y country.
 DirectoryIterator::__constructLanza una UnexpectedValueException si path no se puede abrir.
 acoshLa función esta disponible en todas las plataformas
 array_multisortSe añadió SORT_LOCALE_STRING a array1_sort_flags como posible bandera de ordenación.
 array_reduceSe cambió el parámetro initial para permitir mixed, anteriormente era integer.
 array_searchAl igual que con todas las funciones internas de PHP a partir de la versión 5.3.0, array_search devuelve NULL si se le pasan parámetros inválidos.
 asinhLa función esta disponible en todas las plataformas
 atanhLa función esta disponible en todas las plataformas
 call_user_funcLa interpretación de palabras clave orientadas a objetos como parent y self ha cambiado. Anteriormente al llamarlas usando la sintaxis de dobles dos puntos emitiría una advertencia E_STRICT porque eran interpretadas como estáticas.
 call_user_func_arrayLa interpretación de palabras clave orientadas a objetos como parent y self ha cambiado. Anteriormente al llamarlas usando la sintaxis de dobles dos puntos emitiría una advertencia E_STRICT porque eran interpretadas como estáticas.
 checkdnsrrEsta función está disponible en plataformas Windows.
 clearstatcacheSe añadieron los parámetros opcionales clear_realpath_cache y filename.
 copySe añadió el soporte para el contexto.
 cryptPHP ahora contiene su propia implementación de los algoritmos MD5, DES estándar, DES extendido y Blowfish y los utilizará si el sistema carece de soporte para uno o varios de los algoritmos.
 curl_getinfoIntrodujo CURLINFO_CERTINFO.
 curl_setoptSe introdujo CURLOPT_PROGRESSFUNCTION.
 date_default_timezone_setAhora se lanza un E_WARNING en vez de un E_STRICT.
 define_syslog_variablesEsta función lanza un aviso E_DEPRECATED.
 dldl está desactivado en algunos módulos SAPI por problemas de estabilidad. Los únicos modulos SAPI que permiten dl son: CLI, CGI and Embed. En su lugar usar las directivas Directivas de carga de extensiones
 dns_get_recordPrior to this release, if the authns parameter was given, the addtl parameter was also required.
 dns_get_recordThis function is now available on Windows platforms.
 error_reportingSe introdujo E_DEPRECATED y E_USER_DEPRECATED.
 exif_imagetypeSe añadió soporte para iconos.
 expm1Esta función está ahora disponible en todas las plataformas.
 fgetcsvSe añadió el parámetro escape
 fnmatchEsta función ahora está disponible en plataformas Windows.
 func_get_argSi esta función es llamada desde el ámbito último de un archivo que ha sido incluido mediante una llamada a include o require desde dentro de una función en el archivo de llamada, ahora genera una advertencia y devuelve FALSE.
 func_get_argEsta función ahora se puede usar en listas de parámetros.
 func_get_argsEsta función ahora se puede usar en listas de parámetros.
 func_get_argsSi esta función es llamada desde el ámbito último de un archivo que ha sido incluido mediante una llamada a include o require desde dentro de una función en el archivo de llamada, ahora genera una advertencia y devuelve FALSE.
 func_num_argsEsta función ahora se puede usar en listas de parámetros.
 func_num_argsSi esta función es llamada desde el ámbito último de un fichero que ha sido incluido mediante una llamada a include o require desde dentro de una función en el fichero de llamada, ahora genera una advertencia y devuelve -1.
 gd_infoEl atributo JPG Support se renombró a JPEG Support.
 get_cfg_varget_cfg_var se fijó para ser capaz de retornar un "array" con las opciones ini.
 get_classEl valor predeterminado de object ahora es NULL, por lo que pasar el valor NULL a object tiene el mismo resultado que no pasar ningún valor.
 get_defined_constantsConstantes fundamentales se clasifican en Core, antes internal. En Windows, las constantes fundamentales se clasifican en mhash.
 get_object_varsEsta función ahora devuelve NULL si object no es un objeto. Anteriormente devolvía FALSE
 getimagesizeSe añadió el soporte para iconos.
 getmxrrEsta función ahora está disponible en plataformas Windows.
 getoptAñadido soporte para usar "=" como separador de argumento/valor.
 getoptAñadido soporte para valores opcionales (especificado mediante "::").
 getoptEl parámetro longopts está disponible en todos los sistemas.
 getoptEsta función ya no depende del sistema y funciona también en Windows.
 hash_algosSe añade soporte para md2, ripemd256, ripemd320, salsa10, salsa20, snefru256 y para sha224
 htmlentitiesSe añadió la constante ENT_IGNORE.
 htmlspecialcharsSe añadió la constante ENT_IGNORE.
 imagecolorclosesthwbEstá función ahora está disponible en Windows
 imagefilterSe añadió el soporete de pixelación (IMG_FILTER_PIXELATE).
 inet_ntopEsta función ahora está disponible en plataformas Windows.
 inet_ptonEsta función ahora está disponible en plataformas Windows.
 ini_getAnteriormente, se devolvía un string si la opción de configuración no existía. Ahora en su lugar se devuelve FALSE.
 ini_get_allSe añadió details.
 is_aEsta función ya no está obsoleta, y por lo tanto ya no lanza advertencias de tipo E_STRICT.
 json_decodeSe añadió el parámetro opcional depth. La profundidad de recursividad predeterminada se aumentó de 128 a 512
 json_encodeSe añadió el parámetro options.
 linkEsta función ahora está disponible en plataformas Windows (Vista, Server 2008 o superiores).
 linkinfoEsta función ahora está disponible en plataformas Windows (Vista, Server 2008 o mayores).
 log1pEsta función está disponible en todas las plataformas.
 mb_get_infoEstá disponible la entrada "http_output_conv_mimetypes".
 mcrypt_create_ivYa no se requiere invocar primero a srand. Esto ahora se realiza de forma automática.
 mcrypt_create_ivMCRYPT_DEV_RANDOM y MCRYPT_DEV_URANDOM se volvieron disponibles en plataformas Windows.
 mktimemktime ahora lanza un aviso de tipo E_DEPRECATED si se usa el parámetro is_dst.
 mysql_db_queryÉsta función ahora lanza ahora un aviso E_DEPRECATED.
 mysql_escape_stringAhora, esta función lanza un aviso E_DEPRECATED.
 mysqli_get_cache_statsSe agregó mysqli_get_cache_stats como rutina improductiva.
 nl2brSe agregó el parámetro opcional is_xhtml. Antes de esta versión, siempre se insertaba '<br />'.
 openssl_sealSe añadió el parámetro method.
 parse_ini_fileAñadido el parámetro opcional scanner_mode. Las comillas simples ahora pueden usarse para las asignaciones de variables. Las almohadillas (#) no deberían utilizarse como comentarios, ya que lanzarán una advertencia de obsolescencia si se emplean.
 pg_lo_createThe optional object_id was added.
 pg_lo_importThe optional object_id was added.
 preg_quoteEl carácter - ahora es escapado
 property_existsEsta función comprueba la existencia de una propiedad independientemente de su accesibilidad.
 rawurlencodeAhora sigue el RFC 3986.
 readlinkEsta función ahora está disponible en plataformas Windows (Vista, Server 2008 o mayores).
 realpathAntes de esta versión, si en sistemas *BSD el último componente de path no existía, realpath no fallaba. Ahora realpath también falla en este caso.
 register_tick_functionLos ticks ahora están soportados en los módulos de servidores web que usan hilos.
 roundSe introdujo el parámetro mode.
 session_startSi una sesión falla al iniciarse, se devuelve FALSE. Anteriormente se devolvía TRUE.
 setlocaleEstá función ahora emite un aviso E_DEPRECATED si se pasa un string al parámetro category en lugar de una de las constantes LC_*.
 shm_attachEsta función ahora devuelve un recurso en vez de un integer.
 socket_create_pairEsta función ya está disponible en las plataformas de Windows.
 spl_autoload_registerSe introdujo el soporte para espacios de nombres.
 spl_autoload_registerSe añadio el parámetro prepend.
 stream_context_createSe añadió el argumento opcional params.
 stream_socket_pairEsta función ahora está disponible en plataformas Windows.
 stristrAgregado el parámetro opcional before_needle.
 strlenLas versiones anteriores trataban los arrays como el string Array, devolviendo así una longitud de string de 5 y emitiendo un error de nivel E_NOTICE.
 strstrSe añadió el parámetro opcional before_needle.
 strtotimeAntes de PHP 5.3.0, 24:00 no era un formato válido y strtotime devolvía FALSE.
 strtotimeAntes de PHP 5.3.0, formatos de tiempo relativo que se suministran al parámetro time de la función strtotime como this week, previous week, last week, y next week se interpreta como un período de 7 días en relación con la fecha y hora actual, en lugar de un período de semana de Monday a Sunday.
 sybase_connectSe añade el parámetro new .
 symlinkEsta función ahora es compatible con las plataformas Windows (Vista, Server 2008 o superior).
 time_nanosleepEsta función ahora está disponible en plataformas Windows.
 time_sleep_untilEsta función ahora está disponible en plataformas Windows.
 touchSe hizo posible cambiar el momento de modificación de un directorio bajo Windows.
 mysqli::__constructSe añadió la capacidad de conexiones persistentes.
 mysqli::optionsSe añadierons las opciones MYSQLI_OPT_INT_AND_FLOAT_NATIVE, MYSQLI_OPT_NET_CMD_BUFFER_SIZE, MYSQLI_OPT_NET_READ_BUFFER_SIZE, y MYSQLI_OPT_SSL_VERIFY_SERVER_CERT.
 mysqli::querySe agregó la posibilidad de realizar consultas asíncronas.
 ReflectionFunction::__constructahora name puede representar una función anónima.
 SplFileObject::setCsvControlAñadido el parámetro escape.
 SplObjectStorage::attachAñadido el parámetro data.
5.2.15mysqli_driver::$report_modeEl cambio de modo de notificación ahora es por solicitud, en vez de por proceso.
5.2.11get_defined_constantsEl parámetro categorize ahora funciona correctamente. Anteriormente, el parámetro categorize era interpretado como !is_null($categorize), por lo que cualquier valor distinto de NULL fuerza a las constantes a ser clasificadas.
5.2.10array_randEl array de claves resultante ya no se mezcla.
 array_uniqueSe volvió a cambiar el valor predeterminado de sort_flags a SORT_STRING.
 curl_setoptSe introdujo CURLOPT_PROTOCOLS, y CURLOPT_REDIR_PROTOCOLS.
 ip2longAntes de esta versión, ip2long según como devolverá un número válido incluso si el valor no es una dirección con puntos (IPv4) Internet Protocol.
 natsortLas cadenas numéricas rellenadas con ceros (p.ej., '00005') ahora ignoran el relleno de 0.
5.2.9array_uniqueSe añadió el parámetro opcional sort_flags con el valor predeterminado SORT_REGULAR. Antes de 5.2.9, esta función se usaba para ordenar el array con SORT_STRING internamente.
5.2.8XSLTProcessor::importStylesheetAcepta SimpleXMLElement de nuevo; no funcionaba desde PHP 5.2.6.
5.2.7error_logEl valor posible de 4 se añadió a message_type.
 parse_ini_fileCuando sucede un error de sintaxis, esta función devolverá FALSE en vez de un array vacío.
 roundEl funcionamiento interno en round se modificó para adecuarse al estándar C99.
 strtotimeEn PHP 5 anterior a 5.2.7, las peticiones de una incidencia de un día de la semana dado en un mes donde ese día de la semana era el primer día del mes, añadía incorrectamente una semana a la marca de tiempo devuelta. Esto ha sido corregido en 5.2.7 y versiones posteriores.
5.2.6fopenSe añadieron las opciones 'c' y 'c+'
5.2.5addcslashesSe añadieron las secuencias de escape \v y \f.
 debug_backtraceSe añadió el parámetro opcional provide_object.
 imagefilterSe añadió el soporte de alfa para IMG_FILTER_COLORIZE.
5.2.4array_sliceEl valor predeterminado del parámetro length se cambió a NULL. Una length NULL ahora indica a la función que use la longitud de array. Antes de esta versión, una length NULL se tomaba como de longitud cero (no se devolvía nada).
 checkdnsrrSe añadió el type TXT.
 curl_getinfoIntrodujo CURLINFO_PRIVATE.
 curl_setoptSe introdujo CURLOPT_PRIVATE.
 get_loaded_extensionsFue añadido el parámetro opcional zend_extensions
 ldap_first_attributeber_identifier ha sido retirado. Este ahora es manejado automáticamente por PHP.
 ldap_next_attributeEl parámetro ber_identifier fue removido. Este se maneja ahora automáticamente por PHP.
 parse_ini_fileLas claves y los nombres de las secciones consisten en números que ahora se evalúan como integers de PHP, así los números que comiencen por 0 son evaluados como octales y los números que comiencen por 0x son evaluados como hexadecimales.
 stream_wrapper_registerAñadido el parámetro flags.
5.2.3getimagesizeLos errores de lectura generados por esta función se degradaron desde E_WARNING a E_NOTICE.
 htmlentitiesSe añadió el parámetro double_encode.
 htmlspecialcharsSe añadió el parámetro double_encode.
 json_decodeLa profundidad de recursividad predeterminada se aumentó de 20 a 128
 XMLWriter::writeElementEl parámetro content se convierte en opcional.
 XMLWriter::writeElementNsEl parámetro content se convierte en opcional.
 PDOStatement::getColumnMetaEl campo table
5.2.2 - 5.2.6substrSi el parámetro start indica una posición negativa de truncamiento o más allá, se devolverá false. En otras versiones de PHP obtienen la cadena desde el principio.
5.2.2DOMDocument::registerNodeClassAntes de 5.2.2, una extendedclass previamente registrada teniá que ser desregistrada antes de poder registrar una nueva clase que extendiese a la misma baseclass.
 ftp_ssl_connectLa función se ha cambiado para devolver FALSE cuando no se puede utilizar una conexión SSL, en lugar de recurrir a una conexión no-SSL como hacía en versiones anteriores.
 phpinfoSe añadió la información del "Fichero de configuración cargado", mientras que anteriormente solo existía "Ruta del fichero de configuración (php.ini).
 preg_matchLos sub-patrones nominados ahora aceptan la sintaxis (?<nombre>) y (?'nombre') así como (?P<nombre>). Las versiones anteriores sólo aceptaban (?P<nombre>).
 preg_match_allLos sub-patrones nominados ahora aceptan la sintaxis (?<nombre>) y (?'nombre') así como (?P<nombre>). Versiones anteriores sólo aceptaban (?P<nombre>).
 proc_terminateVersiones previas usadas para destruir el recurso de un proceso dado.
 token_get_allLos números de línea son devueltos en el elemento 2
5.2.1iterator_to_arrayAñadido el parámetro use_keys.
 json_decodeSe añadió soporte para la decodificación de JSON de tipos básicos.
 memory_get_peak_usageCompilar con --enable-memory-limit ya no es necesario para que esta función exista.
 memory_get_usageCompilar con --enable-memory-limit ya no es necesario para que exista esta función.
 mt_srandLa implementación de Mersenne Twister en PHP ahora usa un nuevo algoritmo para la semilla de Richard Wagner. La misma semilla ahora ya no produce la misma secuencia de valores como sucedía en anteriores versiones. No se espera que se vuelva a cambiar de nuevo este comportamiento, aunque, no obstante, se considera inseguro confiar en él.
 proc_openAñadida la opción bypass_shell al parámetro other_options.
 realpathAntes de esta versión, realpath devolvía FALSE si path era un string vacío o NULL.
5.2.0base64_decodeAñadido strict
 curl_multi_info_readmsgs_in_queue fue añadido.
 error_reportingSe introdujo E_RECOVERABLE_ERROR.
 imagettftextAhora es posible especificar una entidad hexadecimal en text.
 imap_openSe añadió n_retries
 imap_reopenSe añadió n_retries
 mb_strrposSe añadió el parámetro opcional offset.
 memory_get_peak_usageSe añade real_usage.
 memory_get_usageSe añadió real_usage.
 openssl_verifySe añadió el parámetro signature_alg.
 pathinfoSe añadió la constante PATHINFO_FILENAME.
 pg_escape_byteaSe agregó el parámetro connection
 pg_escape_stringconnection added
 session_get_cookie_paramsLa entrada "httponly" fue añadida en la matriz devuelta.
 session_set_cookie_paramsSe añadió el parámetro httponly.
 set_error_handlerEl gestor de errores debe devolver FALSE para rellenar $php_errormsg.
 setcookieSe añadió el parámetro httponly.
 setrawcookieSe añadió el parámetro httponly.
 simplexml_load_fileSe añadió el parámetro opcional is_prefix.
 simplexml_load_stringSe añadió el parámetro opcional is_prefix.
 snmp_set_oid_numeric_printThis function is now an alias of snmp_set_oid_output_format.
 PDOStatement::executeLas claves de input_parameters deben coincidir con aquellas declaradas en la sentencia SQL. Antes de PHP 5.2.0 esto se ignoraba silenciosamente.
 SimpleXMLElement::attributesSe añadió el parámetro opcional is_prefix.
 SimpleXMLElement::childrenSe añade el parámetro opcional is_prefix.
 SimpleXMLElement::__constructAñadidos los parámetros ns y is_prefix.
 SoapServer::SoapServerAdded the typemap option.
 XMLReader::openencoding y options fueron agregadas.
 XMLReader::XMLencoding ay options fueron agregados.
5.1.3DirectoryIterator::__constructLanza una RuntimeException si path es una cadena vacía.
 curl_getinfoIntrodujo CURLINFO_HEADER_OUT.
 get_headersEsta función usa el contexto de secuencia predeterminado, el cual puede ser definido/modificado con la función stream_context_set_default.
 http_build_queryLos corchetes cuadrados son escapados.
 imagecolorallocateDevuelve FALSE si falló la asignación. Anteriormente devolvía -1.
 imagecolorallocatealphaDevuelve FALSE si falló la asignación. Anteriormente devolvía -1.
 imagepngAñadido el parámetro filters.
 mb_get_infoEstán disponibles las entradas "mail_charset", "mail_header_encoding", y "mail_body_encoding".
 SoapClient::__doRequestSe añadió el parámetro one_way.
 XMLReader::getAttributeDevuelve NULL si no se encuentra ningún atributo. Antes, devolvía una cadena de texto vacía.
5.1.2date_default_timezone_setLa función comenzo a validar el parámetro timezone_identifier.
 headerEsta función ahora previene que se pueda enviar más de un encabezado a la vez como protección en contra de ataques de inyección de encabezados.
 http_build_querySe agregó el parámetro arg_separator.
 imagepngAñadido el parámetro quality.
 parse_urlSe agregó el parámetro component.
 SimpleXMLElement::__constructAñadidos los parámetros options y data_is_url.
5.1.1dateHay constantes útiles de los formatos estándar de fecha/hora que pueden utilizarse para especificar el parámetro format.
 debug_backtraceSe añadió el object actual como posible elemento devuelto.
 gmdateHay constantes útiles de formatos de fecha/hora estándar que se pueden usar para especificar el parámetro format.
5.1.0DirectoryIterator::__constructLanza una RuntimeException en caso de error. Anteriormente lanzaba una Exception.
 DOMDocument::saveSe añadió el parámetro options
 DOMDocument::saveXMLSe añadió el parámetro options
 class_implementsAñadida la opción para pasar el parámetro class como un string. Añadido el parámetro autoload.
 class_parentsAñadida la opción para pasar el parámetro class como un string. Añadido el parámetro autoload.
 ctype_digitEn versiones anteriores a PHP 5.1.0, esta función devolvía TRUE cuando text era una cadena vacía.
 curl_setoptSe introdujo CURLOPT_AUTOREFERER, CURLOPT_BINARYTRANSFER, CURLOPT_FTPSSLAUTH, CURLOPT_PROXYAUTH, y CURLOPT_TIMECONDITION.
 dateEl rango válido de una marca de tiempo es típicamente desde Fri, 13 Dec 1901 20:45:54 GMT a Tue, 19 Jan 2038 03:14:07 GMT. (Estas son las fechas que corresponden a los valores mínimo y máximo de un entero con signo de 32 bit). Sin embargo, antes de PHP 5.1.0 este rango estaba limitado desde 01-01-1970 a 19-01-2038 en algunos sistemas (p.ej. Windows).
 dateAhora muestra un error E_STRICT y E_NOTICE cuando ocurren errores con zonas horarias.
 date_sunriseAhora muestra un error E_STRICT y E_NOTICE cuando ocurren errores con zonas horarias.
 date_sunsetAhora muestra un error E_STRICT y E_NOTICE cuando ocurren errores con zonas horarias.
 explodeSe añadió soporte para limit negativo.
 fgetcsvEl parámetro length ahora es opcional. El valor predeterminado es 0, significando sin límite de longitud.
 file_get_contentsSe añadieron los parámetros offset y maxlen.
 file_put_contentsAñadido el soporte para LOCK_EX y la capacidad de pasar un recurso de flujo al parámetro data
 get_parent_classSi se llamaba sin parámetro fuera del objeto, está función devolvía NULL con una advertencia, pero ahora devuelve FALSE.
 gettimeofdaySe añadió el parámetro return_float.
 globSe añadió GLOB_ERR
 gmdateEl rango válido de una marca de tiempo es típicamente desde Fri, 13 Dec 1901 20:45:54 GMT a Tue, 19 Jan 2038 03:14:07 GMT. (Estas son las fechas que corresponden a los valores mínimo y máximo de un entero con signo de 32-bit). Sin embargo, antes de PHP 5.1.0 este rango estaba limitado desde 01-01-1970 a 19-01-2038 en algunos sistemas (p.ej. Windows).
 gmmktimeA partir de PHP 5.1.0, el parámetro is_dst se volvió obsoleto. Como resultado, se podría usar en su lugar las nuevas características de manejo de zonas horarias.
 idateAhora muestra un error E_STRICT y E_NOTICE cuando ocurren errores con zonas horarias.
 imagerotateSe añadió ignore_transparent.
 intvalLanza E_NOTICE y devuelve 1, cuando se pasa un objecto a var.
 localtimeAhora muestra un error E_STRICT y E_NOTICE cuando ocurren errores con zonas horarias.
 md5_fileSe modificó la función para usar la API de secuencias. Esto quiere decir que se puede usar con envolturas, como md5_file('http://example.com/..')
 mktimeCuando se hace la llamada sin argumento, mktime lanza un aviso E_STRICT. Use la función time en su lugar.
 mktimeAhora muestra un error E_STRICT y E_NOTICE cuando ocurren errores con zonas horarias.
 mktimeEl parámetro is_dst se volvió obsoleto. Hacía que la funcion devolviese FALSE si se pruducía un error, en vez de -1. Arreglada la función para que acepte el año, mes y día pasados como cero.
 mssql_connectSe añadió el parámetro new_link .
 openssl_pkcs7_verifySe añadió el parámetro content.
 preg_replaceAñadido el parámetro count
 preg_replace_callbackSe añadió el parámetro count
 session_regenerate_idAñadido el parámetro delete_old_session.
 sha1_fileCambiada la función para utilizar el API de flujo de datos. Esto significa que se puede utilizar con envolturas, como en sha1_file('http://ejemplo.com/..')
 str_word_countAgregado el parámetro charlist
 stream_copy_to_streamSe añadió el parámetro offset
 stream_filter_appendAntes de PHP 5.1.0, esta función devolvía TRUE si se tuvo éxito o FALSE en caso de error.
 stream_filter_prependAntes de PHP 5.1.0, esta función devolvía TRUE en caso de éxito o FALSE en caso de error.
 stream_get_contentsSe añadió el parámetro offset.
 strftimeAhora muestra un error E_STRICT y E_NOTICE cuando ocurren errores con zonas horarias.
 strtotimeAhora devuelve FALSE si falla, en vez de -1.
 strtotimeAhora muestra un error E_STRICT y E_NOTICE cuando ocurren errores con zonas horarias.
 substr_compareSe añadió la posibilidad de usar un offset negativo.
 substr_countLos parámetros offset y length fueron agregados
 var_exportPosibilidad de exportar las clases y los arrays que contienen las clases utilizando el método mágico __set_state.
 XSLTProcessor::registerPHPFunctionsSe añadió el parámetro restrict.
5.0.5php_check_syntaxEsta función fue eliminada de PHP.
5.0.4msql_fetch_arraySe corrigió un error al recuperar los datos de las columnas que contenían valores NULL. Estas columnas no se incluyen en el array resultante.
 msql_fetch_objectSe corrigió un error al recuperar los datos de las columnas que contenían valores NULL. Estas columnas no se incluyen en el array resultante.
 msql_fetch_rowSe corrigió un error al recuperar los datos de las columnas que contenían valores NULL. Estas columnas no se incluyen en el array resultante.
5.0.3get_class_varsget_class_vars devolverá sólo las propiedades que pueden ser accedidas desde el ámbito actual.
 is_subclass_ofEs posible especificar también el parámetro object como una cadena (el nombre de la clase)
 php_check_syntaxLlamar a exit después de php_check_syntax resultaba en un fallo de segmentación.
5.0.2array_sliceSe añadió el parámetro opcional preserve_keys.
 class_existsYa no devuelve TRUE para interfaces definidas. En ese caso se debe usar interface_exists.
 get_class_varsAl llamar a get_class_vars ahora se expondrán todas las propiedades como una matriz, a diferencia del comportamiento anterior donde las propieades protected y private eran prefijadas con bytes nul.
 sortSe añadió SORT_LOCALE_STRING
 strtotimeEn PHP 5 hasta 5.0.2, "now" y otros momentos relativos son computados erróneamente como la medianoche de hoy. Esto difiere de otras versiones donde es computado como el momento actual.
5.0.1get_class_varsAl llamar a get_class_vars se expondrán todas las propiedades, como cuando se convierte un objeto en una clase.
 php_check_syntaxmensaje_error es pasado por referencia.
5.0.0curl_setoptSe introdujo CURLOPT_FTP_USE_EPRT, CURLOPT_NOSIGNAL, CURLOPT_UNRESTRICTED_AUTH, CURLOPT_BUFFERSIZE, CURLOPT_HTTPAUTH, CURLOPT_PROXYPORT, CURLOPT_PROXYTYPE, CURLOPT_SSLCERTTYPE, y CURLOPT_HTTP200ALIASES.
 is_aEsta funcion se volvió obsoleta en favor del operador instanceof. Llamar a esta función resultará en una advertencia de tipo E_STRICT.
 opendirruta soporta dentro de la URL la envoltura ftp://.
 parse_ini_fileLos valores encerrados entre comillas dobles pueden contener nuevas líneas.
 renamerename ahora también puede emplearse con algunas envolturas de URL. Consulte para un listado de las envolturas que admite rename.
 strip_tagsstrip_tags ahora es segura a nivel binario.
 strrposneedle puede ser ahora un string de más de un carácter.
 strtotimeLos microsegundos comenzaron a estar permitidos, pero son ignorados.