PHP What's New in PHP 8.[123]? PHP UK Conference 2024 London, UK February 16th, 2024 Derick Rethans derick@php.net derickr @derickr@phpc.social https://derickrethans.nl/talks/php-phpuk24 slides/xdebug/title.xml slides/mongodb/me.xml Readonly properties 2.0 (https://wiki.php.net/rfc/readonly_properties_v2) slides/internals/php81-readonly.xml https://wiki.php.net/rfc/readonly_classes slides/internals/php82-readonly.xml https://wiki.php.net/rfc/readonly_amendments slides/internals/php83-readonly.xml Mixed Type v2 PHP 8.0: https://wiki.php.net/rfc/static_return_type static return type Constructor Property Promotion slides/internals/php80-named-without.xml slides/internals/php80-named-with.xml Enumerations (https://wiki.php.net/rfc/enumerations) https://wiki.php.net/rfc/fetch_property_in_const_expressions slides/internals/php82-enums-1.xml Array unpacking with string keys (https://wiki.php.net/rfc/array_unpacking_string_keys) slides/internals/php81-array-unpacking.xml Fibers (https://wiki.php.net/rfc/fibers) First Class Callable (https://wiki.php.net/rfc/first_class_callable_syntax) slides/internals/php81-fcc.xml PHP 8.2: https://wiki.php.net/rfc/null-false-standalone-types 'null' and 'false' as standalone slides/internals/php82-null-false-standalone.xml https://wiki.php.net/rfc/true-type 'true' type slides/internals/php82-true.xml Pure Intersection Types (https://wiki.php.net/rfc/pure-intersection-types) slides/internals/php81-pure-intersection.xml https://wiki.php.net/rfc/dnf_types ? Disjunctive Normal Form Types slides/internals/php82-dnf-types.xml https://wiki.php.net/rfc/rng_extension slides/internals/php82-random.xml https://wiki.php.net/rfc/randomizer_additions slides/internals/php83-random.xml https://wiki.php.net/rfc/deprecate_dynamic_properties slides/internals/php82-deprecate-dynamic-properties.xml https://wiki.php.net/rfc/redact_parameters_in_back_traces slides/internals/php82-redact-parameters.xml PHP 8.3: Syntax additions: https://wiki.php.net/rfc/marking_overriden_methods slides/internals/php83-marking-overridden-methods.xml https://wiki.php.net/rfc/typed_class_constants slides/internals/php83-typed-class-constants.xml https://wiki.php.net/rfc/dynamic_class_constant_fetch slides/internals/php83-dynamic-class-constant-fetch.xml https://wiki.php.net/rfc/arbitrary_static_variable_initializers slides/internals/php83-arbitrary-static-var-initialisers.xml Minor improvements: https://wiki.php.net/rfc/json_validate slides/internals/php83-json_validate.xml https://wiki.php.net/rfc/datetime-exceptions slides/internals/php83-datetime-exceptions.xml PHP 8.4: Major additions: https://wiki.php.net/rfc/domdocument_html5_parser slides/internals/php84-dom-html5.xml https://wiki.php.net/rfc/jit-ir slides/internals/php80-jit.xml slides/internals/php84-jit.xml Minor additions: https://wiki.php.net/rfc/improve_callbacks_dom_and_xsl https://wiki.php.net/rfc/pdo_driver_specific_subclasses slides/internals/php84-pdo-subclass.xml https://wiki.php.net/rfc/new_rounding_modes_to_round_function slides/internals/php84-round-modes.xml https://wiki.php.net/rfc/mb_trim https://wiki.php.net/rfc/bcrypt_cost_2023 https://wiki.php.net/rfc/rfc1867-non-post https://wiki.php.net/rfc/http-last-response-headers Deprecations: https://wiki.php.net/rfc/unbundle_imap_pspell_oci8 slides/internals/questions-new.xml slides/xdebug/resources.xml