#native_company# #native_desc#

PHP4/Zend OverView Page 3

By Zeev Suraski
on July 30, 2000

What about the rest?

PHP 4.0 will not be only about performance and improved reliability. Quite
a few additional improvements are scheduled for this release, and
are in various stages of implementation. First, the PHP modules
in the above diagram are scheduled to be much more modular than
they were in PHP 3.0. While you would still have the option of
compiling every module that comes with the PHP distribution as an
integral part of PHP, in version 4.0, we intend to make it
possible and easy to compile each module as a dynamic, loadable
module, and selectively load every module you wish at runtime.
The engine support for this already existed in PHP 3.0, but there
was no standard and easy to use build process to build dynamic
modules. This feature has already been mostly implemented by Stig Bakken.
Another major issue we intend to address in version 4.0 is the
Web Server interface. Version 3.0 had 3 supported interfaces –
standard CGI, Apache and fhttpd, Apache being by-far the most
popular one. In this new version, the Web Server interface is
going to be generalized in a way that would allow us to easily
support additional servers, most notably ISAPI (for Microsoft Internet
Information Server (IIS) under Windows NT) and NSAPI (for the various Netscape servers).
The multithreaded implementations will make use of the new thread
safe resource manager that we’ve developed for Zend (at this time,
Zend and PHP’s core are 100% thread safe as they use this manager;
the various other parts of PHP are now being added thread safety). At this
time, abstraction layer modules have been completed for Apache, ISAPI and CGI
(yes, PHP now works natively as an IIS module, just as smoothly as it works as
an Apache module).
Finally, Zend’s new features allow extended support for 3rd
party APIs, such as COM. A COM module will be included in the Win32
distribution of PHP 4.0, that enables full COM automation. Simply
put, it means you’d be able to access COM/DCOM objects from PHP 4.0
just as easily as you access them from ASP, using a full object-oriented
syntax. Note that Zend’s core does not have any dedicated COM
support, thus, other OO interfaces, such as CORBA, may be also
supported in the future, provided someone writes a support module
for them.
To summarize, PHP 4.0 will not only be much quicker and
reliable than PHP 3.0, it’ll also be more modular, portable and
Zend has been recently feature-frozen and finalized, and is
now going through a closed internal beta test. An alpha of PHP4
that uses Zend is being used and is based for further PHP 4.0
development of the additional features mentioned above. Assuming
we won’t bump into any unexpected striking issues, I expect the
first public beta of PHP 4.0 to be released in late June or early July 1999.