PHP is an open source general-purpose server-side scripting language originally designed for Web development to produce dynamic Web pages. It is one of the first developed server-side scripting languages to be embedded into an HTML source document rather than calling an external file to process data. The code is interpreted by a Web server with a PHP processor module which generates the resulting Web page. It also has evolved to include a command-line interface capability and can be used in standalone graphical applications.
If you are new to PHP and want to get some idea of how it works, try the introductory tutorial.
After that, check out the online manual.
What's New
Core:
- Added optional support for max_execution_time in ZTS/Linux builds (Kévin Dunglas)
- Fixed use-after-free in recursive AST evaluation.
- Fixed bug GH-8646 (Memory leak PHP FPM 8.1).
- Re-add some CTE functions that were removed from being CTE by a mistake.
- Remove CTE flag from array_diff_ukey(), which was added by mistake.
- Fixed bug GH-10801 (Named arguments in CTE functions cause a segfault).
- Fixed bug GH-8789 (PHP 8.0.20 (ZTS) zend_signal_handler_defer crashes on apache).
- Fixed bug GH-10015 (zend_signal_handler_defer crashes on apache shutdown).
- Fixed bug GH-10810 (Fix NUL byte terminating Exception::__toString()).
- Fix potential memory corruption when mixing __callStatic() and FFI.
Date:
- Fixed bug GH-10747 (Private and protected properties in serialized Date* objects throw).
FPM:
- Fixed bug GH-10611 (fpm_env_init_main leaks environ).
- Destroy file_handle in fpm_main.
- Fixed bug #74129 (Incorrect SCRIPT_NAME with apache ProxyPassMatch when spaces are in path).
FTP:
- Propagate success status of ftp_close().
- Fixed bug GH-10521 (ftp_get/ftp_nb_get resumepos offset is maximum 10GB).
IMAP:
- Fix build failure with Clang 16.
MySQLnd:
- Fixed bug GH-8979 (Possible Memory Leak with SSL-enabled MySQL connections).
Opcache:
- Fixed build for macOS to cater with pkg-config settings.
- Fixed bug GH-8065 (opcache.consistency_checks > 0 causes segfaults in PHP >= 8.1.5 in fpm context).
OpenSSL:
- Add missing error checks on file writing functions.
PDO Firebird:
- Fixed bug GH-10908 (Bus error with PDO Firebird on RPI with 64 bit kernel and 32 bit userland).
Phar:
- Fixed bug GH-10766 (PharData archive created with Phar::Zip format does not keep files metadata (datetime)).
- Add missing error checks on EVP_MD_CTX_create() and EVP_VerifyInit().
PDO ODBC:
- Fixed missing and inconsistent error checks on SQLAllocHandle.
PGSQL:
- Fixed typo in the array returned from pg_meta_data (extended mode).
SPL:
- Fixed bug GH-10519 (Array Data Address Reference Issue).
- Fixed bug GH-10907 (Unable to serialize processed SplFixedArrays in PHP 8.2.4).
- Fixed bug GH-10844 (ArrayIterator allows modification of readonly props).
Standard:
- Fixed bug GH-10885 (stream_socket_server context leaks).
- Fixed bug GH-10052 (Browscap crashes PHP 8.1.12 on request shutdown (apache2)).
- Fixed oss-fuzz #57392 (Buffer-overflow in php_fgetcsv() with \0 delimiter and enclosure).
- Fixed undefined behaviour in unpack().