@@ -253,6 +253,9 @@ PHP 8.4 UPGRADE NOTES
253253 . The "allowed_classes" option for unserialize() now throws TypeErrors and
254254 ValueErrors if it is not an array of class names.
255255 . http_build_query() now correctly handles backed enums.
256+ . stream_bucket_make_writeable() and stream_bucket_new() will now return a
257+ StreamBucket instance instead of an instance of stdClass.
258+ RFC: https://wiki.php.net/rfc/dedicated_stream_bucket
256259
257260- Tidy:
258261 . Failures in the constructor now throw exceptions rather than emitting
@@ -343,13 +346,6 @@ PHP 8.4 UPGRADE NOTES
343346 value can also be retrieved by passing CURLINFO_POSTTRANSFER_TIME_T to the
344347 curl_getinfo() $option parameter. This requires libcurl 8.10.0 or later.
345348
346- - Date:
347- . Added static methods
348- DateTime[Immutable]::createFromTimestamp(int|float $timestamp): static.
349- . Added method DateTime[Immutable]::getMicrosecond(): int.
350- . Added method
351- DateTime[Immutable]::setMicrosecond(int $microsecond): static.
352-
353349- DOM:
354350 . Added constant DOMNode::DOCUMENT_POSITION_DISCONNECTED.
355351 . Added constant DOMNode::DOCUMENT_POSITION_PRECEDING.
@@ -364,9 +360,6 @@ PHP 8.4 UPGRADE NOTES
364360 . Flushing headers without a body will now succeed. See GH-12785.
365361 . Status page has a new field to display a memory peak.
366362
367- - Hash:
368- . Added HashContext::__debugInfo().
369-
370363- Intl:
371364 . NumberFormatter::ROUND_HALFODD added to complement existing
372365 NumberFormatter::ROUND_HALFEVEN functionality.
@@ -403,14 +396,7 @@ PHP 8.4 UPGRADE NOTES
403396 - two-dashes and non-nested C-style comments.
404397 RFC: https://wiki.php.net/rfc/pdo_driver_specific_parsers
405398
406- - PDO_DBLIB:
407- . Added class Pdo\DbLib.
408-
409- - PDO_FIREBIRD:
410- . Added class Pdo\Firebird.
411-
412399- PDO_MYSQL:
413- . Added class Pdo\Mysql.
414400 . Added custom parser supporting:
415401 - single and double-quoted literals, with doubling and backslash as escaping
416402 mechanism
@@ -419,11 +405,7 @@ PHP 8.4 UPGRADE NOTES
419405 and hash-comments
420406 RFC: https://wiki.php.net/rfc/pdo_driver_specific_parsers
421407
422- - PDO_ODBC:
423- . Added class Pdo\Odbc.
424-
425408- PDO_PGSQL:
426- . Added class Pdo\Pgsql.
427409 . Added custom parser supporting:
428410 - single and double quoted literals, with doubling as escaping mechanism
429411 - C-style "escape" string literals (E'string')
@@ -433,23 +415,15 @@ PHP 8.4 UPGRADE NOTES
433415 RFC: https://wiki.php.net/rfc/pdo_driver_specific_parsers
434416
435417- PDO_SQLITE:
436- . Added class Pdo\Sqlite.
437418 . Added custom parser supporting:
438419 - single, double quoted, and backtick literals, with doubling as escaping mechanism
439420 - square brackets quoting for identifiers
440421 - two-dashes and C-style comments (non-nested)
441422 RFC: https://wiki.php.net/rfc/pdo_driver_specific_parsers
442423
443- - PgSQL:
444- . Added pg_result_memory_size to get the visibility the memory used by a query result.
445-
446424- Phar:
447425 . Added support for the unix timestamp extension for zip archives.
448426
449- - POSIX:
450- . Added constant POSIX_SC_CHILD_MAX
451- . Added constant POSIX_SC_CLK_TCK
452-
453427- Readfile:
454428 . Added ability to change .php_history path through PHP_HISTFILE env variable.
455429
@@ -458,9 +432,6 @@ PHP 8.4 UPGRADE NOTES
458432 experience.
459433 . ReflectionClassConstant::__toString() and ReflectionProperty::__toString()
460434 now returns the attached doc comments.
461- . ReflectionConstant was introduced.
462- . ReflectionClassConstant::isDeprecated() was introduced.
463- . ReflectionGenerator::isClosed() was introduced.
464435 . Multiple methods and constants related to lazy objects were introduced:
465436 - ReflectionClass::newLazyGhost()
466437 - ReflectionClass::newLazyProxy()
@@ -475,7 +446,6 @@ PHP 8.4 UPGRADE NOTES
475446 - ReflectionClass::SKIP_INITIALIZATION_ON_SERIALIZE
476447 - ReflectionClass::SKIP_DESTRUCTOR
477448 RFC: https://wiki.php.net/rfc/lazy-objects
478- . ReflectionProperty::isDynamic() was introduced.
479449
480450- SOAP:
481451 . Added support for clark notation for namespaces in class map.
@@ -488,9 +458,6 @@ PHP 8.4 UPGRADE NOTES
488458 . Session persistence now works with a shared session module.
489459
490460- Standard:
491- . stream_bucket_make_writeable() and stream_bucket_new() will now return a
492- StreamBucket instance instead of an instance of stdClass.
493- RFC: https://wiki.php.net/rfc/dedicated_stream_bucket
494461 . Added a new RoundingMode enum with clearer naming and improved discoverability
495462 compared to the PHP_ROUND_* constants.
496463 RFC: https://wiki.php.net/rfc/correctly_name_the_rounding_mode_and_make_it_an_enum
@@ -826,12 +793,23 @@ PHP 8.4 UPGRADE NOTES
826793 . Added bcdivmod().
827794 RFC: https://wiki.php.net/rfc/add_bcdivmod_to_bcmath
828795
796+ - Date:
797+ . Added static methods
798+ DateTime[Immutable]::createFromTimestamp(int|float $timestamp): static.
799+ . Added method DateTime[Immutable]::getMicrosecond(): int.
800+ . Added method
801+ DateTime[Immutable]::setMicrosecond(int $microsecond): static.
802+
829803- DOM:
830804 . Added DOMNode::compareDocumentPosition().
831805 . Added DOMXPath::registerPhpFunctionNS().
832806 RFC: https://wiki.php.net/rfc/improve_callbacks_dom_and_xsl
833807 . Added DOMXPath::quote() to quote a string for use in an XPath expression.
834808 Example usage: "//span[contains(text()," . $xpath->quote($string) . ")]"
809+ . DOMNode::compareDocumentPosition()
810+
811+ - Hash:
812+ . Added HashContext::__debugInfo().
835813
836814- Intl:
837815 . Added IntlDateFormatter::getIanaID()/intltz_get_iana_id() to
@@ -880,6 +858,7 @@ PHP 8.4 UPGRADE NOTES
880858 . Added pg_jit to get informations on the server JIT support.
881859 . Added pg_set_chunked_rows_size to allow to fetch results in chunk of
882860 max N rows.
861+ . Added pg_result_memory_size to get the visibility the memory used by a query result.
883862
884863- Reflection:
885864 . Multiple methods related to lazy objects were introduced:
@@ -894,6 +873,9 @@ PHP 8.4 UPGRADE NOTES
894873 - ReflectionProperty::skipLazyInitialization()
895874 - ReflectionProperty::setRawValueWithoutLazyInitialization()
896875 RFC: https://wiki.php.net/rfc/lazy-objects
876+ . ReflectionClassConstant::isDeprecated() was introduced.
877+ . ReflectionGenerator::isClosed() was introduced.
878+ . ReflectionProperty::isDynamic() was introduced.
897879
898880- Sodium:
899881 . Added the sodium_crypto_aead_aegis128l_*() and sodium_crypto_aead_aegis256l_*()
@@ -951,8 +933,10 @@ PHP 8.4 UPGRADE NOTES
951933 https://wiki.php.net/rfc/fix_up_bcmath_number_class
952934
953935- Core:
954- . New RequestParseBodyException.
936+ . RequestParseBodyException.
955937 RFC: https://wiki.php.net/rfc/rfc1867-non-post
938+ . #[\Deprecated] attribute.
939+ RFC: https://wiki.php.net/rfc/deprecated_attribute
956940
957941- DBA:
958942 . Dba\Connection opaque object replacing DBA resources
@@ -975,6 +959,38 @@ PHP 8.4 UPGRADE NOTES
975959 . Implemented "New ext-dom features in PHP 8.4" RFC.
976960 RFC: https://wiki.php.net/rfc/dom_additions_84
977961
962+ - ODBC:
963+ . Odbc\Connection
964+ . Odbc\Result
965+
966+ - PDO_DBLIB:
967+ . Pdo\DbLib.
968+
969+ - PDO_FIREBIRD:
970+ . Pdo\Firebird.
971+
972+ - PDO_MYSQL:
973+ . Pdo\Mysql.
974+
975+ - PDO_ODBC:
976+ . Pdo\Odbc.
977+
978+ - PDO_PGSQL:
979+ . Pdo\Pgsql.
980+
981+ - PDO_SQLITE:
982+ . Pdo\Sqlite.
983+
984+ - Reflection:
985+ . ReflectionConstant
986+
987+ - SOAP:
988+ . Soap\Url
989+ . Soap\Sdl
990+
991+ - Standard:
992+ . StreamBucket
993+
978994========================================
9799958. Removed Extensions and SAPIs
980996========================================
@@ -1109,6 +1125,10 @@ PHP 8.4 UPGRADE NOTES
11091125- PgSQL:
11101126 . PGSQL_TUPLES_CHUNK
11111127
1128+ - POSIX:
1129+ . POSIX_SC_CHILD_MAX
1130+ . POSIX_SC_CLK_TCK
1131+
11121132- Sockets:
11131133 . SO_EXCLUSIVEADDRUSE (Windows only).
11141134 . SOCK_CONN_DGRAM (NetBSD only).
0 commit comments