PHP 4.3.0 Release Announcement
After a long and arduous 8 months of development and testing, PHP 4.3.0 is out! With regard to scope, time, and effort, this is the largest 4.x release of PHP, and it further elevates PHP's standing as a serious contender in the general purpose scripting language arena.
Command line interface
This version finalizes the separate command line interface (CLI) that can be used for developing shell and desktop applications (with PHP-GTK). The CLI is always built, but installed automatically only if CGI version is disabled via --disable-cgi switch during configuration. Alternatively, one can use make install-cli target. On Windows CLI can be found in cli folder.
CLI has a number of differences compared to other server APIs. More information can be found in the PHP Manual: Using PHP from the command line
A very important "under the hood" feature is the streams API. It introduces a unified approach to the handling of files, pipes, sockets, and other I/O resources in the PHP core and extensions.
What this means for users is that any I/O function that works with streams (and that is almost all of them) can access built-in protocols, such as HTTP/HTTPS and FTP/FTPS, as well as custom protocols registered from PHP scripts. For more information please see: List of Supported Protocols/Wrappers
New build system
This iteration of the build system, among other things, replaces the slow recursive make with one global Makefile and eases the integration of proper dependencies. Automake is only needed for its aclocal tool. The build process is now more portable and less resource-consuming.
PHP 4.3.0 has many improvements and enhancements:
- GD library is now bundled with the distribution and it is recommended to always use the bundled version
- vpopmail and cybermut extensions are moved to PECL
- several deprecated extensions (aspell, ccvs, cybercash, icap) and SAPIs (fastcgi, fhttpd) are removed
- speed improvements in a variety of string functions
- Apache2 filter is improved, but is still considered experimental (use with PHP in prefork and not worker (thread) model since many extensions based on external libraries are not thread safe)
- various security fixes (imap, mysql, mcrypt, file upload, gd, etc)
- new SAPI for embedding PHP in other applications (experimental)
- much better test suite
- significant improvements in dba, gd, pcntl, sybase, and xslt extensions
- debug_backtrace() should help with debugging
- error messages now contain URLs linking to pages describing the error or function in question
- Zend Engine has some fixes and minor performance enhancements
- and TONS of other fixes, updates, new functions, etc
For the full list of changes in PHP 4.3.0, see the ChangeLog file.