PHP
downloads | documentation | faq | getting help | mailing lists | reporting bugs | php.net sites | links | conferences | my php.net

search for in the

Binaries for other systems

We do not distribute UNIX/Linux binaries. Most Linux distributions come with PHP these days, so if you do not want to compile your own, go to your distribution's download site. Binaries available on external servers:

Other Downloads

PEAR packages, PECL hosted PHP extensions and PHP-GTK source and binaries are available on their own pages.

PHP5

PHP is a computer programming language originally designed for producing dynamic web pages.[1] The name PHP is a recursive initialism for PHP: Hypertext Preprocessor.

It is over three and a half years ago since PHP 5 has been released. In those three years it has seen many improvements over PHP 4. PHP 5 is fast, stable & production-ready and as PHP 6 is on the way, PHP 4 will be discontinued.

The PHP development team announced that support for PHP 4 has ceased at the end of 2007. After 2007-12-31 there will be no more releases of PHP 4.4. We will continue to make critical security fixes available on a case-by-case basis until 2008-08-08. Please use the rest of this year to make your application suitable to run on PHP 5.

For documentation on migration for PHP 4 to PHP 5, we would like to point you to our migration guide. There is additional information available in the PHP 5.0 to PHP 5.1 and PHP 5.1 to PHP 5.2 migration guides as well.

 

Well, there are new features and functions with PHP5.  Some of the key features (from PHP.net's news archive):

* The Zend Engine II with a new object model and dozens of new features.
* XML support has been completely redone in PHP 5, all extensions are now focused around the excellent libxml2 library (http://www.xmlsoft.org/).
* A new MySQL extension named MySQLi for developers using MySQL 4.1 and later. This new extension includes an object-oriented interface in addition to a traditional interface; as well as support for many of MySQL's new features, such as prepared statements.
* SQLite has been bundled with PHP. For more information on SQLite (http://sqlite.org/).
* A brand new built-in SOAP extension for interoperability with Web Services.
* A new SimpleXML extension for easily accessing and manipulating XML as PHP objects. It can also interface with the DOM extension and vice-versa.
* Streams have been greatly improved, including the ability to access low-level socket operations on streams.

Overall, though, most things have remained the same.  Scripts that are created to run with PHP4 should work fine with PHP5 if you are considering upgrading.  However, there are some compatibility issues:
 

http://hk.php.net/manual/en/migration5.php


List of Backward Incompatible Changes Between PHP4 and PHP5:
http://us3.php.net/manual/en/migration5.incompatible.php

For more information, check out the PHP4 / PHP5 migration FAQ:
http://us3.php.net/manual/en/faq.migration5.php

PHP5 ChangeLog:
http://www.php.net/ChangeLog-5.php
 

http://www.sourcelabs.com/pdfs/SourceLabsPHP4vsPHP5.pdf

Below are some articles that discuss PHP 5.  Keep in mind that most PHP4
scripts will run just fine in PHP 5 and that the new features (most of
which involve OOP) are optional and not required.  Also keep in mind
the dates the following articles were written, some are years old.

An interesting look at upcoming PHP5 features.  Occasionally updated and
well organized:

  * http://www.phpvolcano.com/articles/php5/

Some official PHP 5 docs exist on OOP:

  * http://www.php.net/manual/en/language.oop5.php

To see facts and examples on what changed or was added in the second
Zend Engine (the engine that powers PHP 5) read ZEND_CHANGES or the
prettier (and more up-to-date) php.net equivelent here:

  * http://www.php.net/zend-engine-2.php
  * http://www.zend.com/php5/andi-book-excerpt.php
  * http://cvs.php.net/co.php/ZendEngine2/ZEND_CHANGES

A list of PHP5 related articles from zend.com, and the PHP5 Feature
Spotlight that lists Zend.com articles/tutorials specific to PHP5:
 
  * http://www.zend.com/zend/future.php
  * http://www.zend.com/php5/
  * http://www.zend.com/zend/php5/

Also the PHP manual has an appendix titled "Migration from PHP 4 to
PHP 5" that can be seen here:

  * http://www.php.net/manual/en/migration5.php

PHP5 Panic.  Tries to calm down peoples fears, like the fear that PHP is
just becoming Java.  Includes discussion at the end:

  * http://www.phppatterns.com/index.php/article/articleview/44/1/3/

A German article on how to get your PHP 4 scripts working in PHP 5:

   * http://www.php-resource.de/forum/showthread.php?threadid=42717

A PHP magazine article titled: Zend Engine 2 - Internals Exposed

  * http://php-mag.net/itr/online_artikel/psecom,id,382,nodeid,114.html

A PHP5 Introduction slideshow:

  * http://ny1.php.net/talks/show.php/php5intro

Another talk/slideshow, this on OOP for PHP Application Servers:

  * http://www.sebastian-bergmann.de/talks/adam-2003-oop.pdf

Yet another talk presentation on PHP 5:
 
  * http://www.derickrethans.nl/files/nluug.pdf

A little Zend Engine 2 Q&A:

  * http://www.zend.com/php/ask_experts.php

Interview with Sterling Hughes on PHP 5:

  * http://www.php-con.com/2003/east/interviews/hughes.php

An introduction to PHP5.  Also sift through the user comments for
related discussion as this column is a bit dated:

  * http://www.phpbuilder.com/columns/argerich20030411.php3

The original ZE2 (PHP5) proposal.  A little dated and changes have been
made but nonetheless still full of interesting information:

  * http://www.zend.com/engine2/ZendEngine-2.0.pdf

And various other conference presensentations and talks with a few

being PHP5 related:

  * http://talks.php.net/

Other notes to keep in mind:

  - There is a PHP5 php.ini directive that puts PHP5 into PHP4
    compatibility mode.  In otherwords, your PHP4 scripts will for
    sure [most likely] work. 
    This directive is called: zend.ze1_compatibility_mode

  - PHP5 will become stable near the middle to end of 2004 but being
    that it's a moving target it's hard to say for sure.  For now
    you may download it from here:
     
    http://www.faqts.com/knowledge_base/view.phtml/aid/22153/fid/1150

  - Many articles refer to namespaces being available in PHP5.  As of
    around June 2003 this is no longer true as they were removed.  If
    it's figured out how to implement them nicely then they will be put
    back...

  - There is no "official" or seperate PHP 5 manual.  There is one
    manual that has both PHP 4 and PHP 5 (and PHP 3) information. 
    This is because most information is identical with both versions.
    PHP 5 specific information may be noted as such some time in the
    future.

  - MySQL support.  There has been some confusion with regards to the
    disabling of MySQL by default in PHP 5.  This simply means that in
    order to use MySQL you must explictly use --with-mysql just like
    you do with most every other extension.  Also, the client libraries
    are no longer bundled, this means you must use your MySQL sources
    instead of optionally using the version that comes with PHP 4.

    People can still use --with-mysql[=DIR], this move isn't a big deal.

    The reason for this action is three-fold:
      - MySQL 3 (which is bundled in PHP 4) : This bundled library
        was no longer properly maintained.
      - MySQL 4 (never bundled) : Is GPL, so doesn't fit with the PHP
        license.
      - PHP is attempting to bundle less third party libraries.
      - Also listed in the following faq:
        http://php.net/manual/faq.databases.php#faq.databases.mysql.php5

 
show source | credits | stats | sitemap | contact | advertising | mirror sites