PHP 5.0.0 Beta 1 launched

Having tested the Alpha, I am thrilled at the features of PHP 5 but at the same time not jumping up and down with glee, given the history it will be at least one more year before I use it in my production environment. See change log at

That said, PHP5 for me will definitely redefine a whole lot of things for me in terms of programming style as it incorporates a lot of real OOP features.

A question is everyone’s mind is about unbundling of MySQL client library from PHP due to license issues. At the onset it looks bad BUT if you read around carefully you will notice the MySQL extension itself is not gone – it is just not bundled with the PHP download.

Lets see whom it hurts more MySQL or PHP – IMO it will be MySQL.

As an aside notice PostgreSQL is under BSD Licence

[Further update]
Ugh – but this is the place to say this…

I have been wondering if I as a developer distributed only PHP scripts would I be in violation of the MYSQL GPL?
As I understand GPL – No! I am not incorporating any part of MySQL code into my scripts nor am I distributing any part of MySQL code.
[/Further update]

  • So what’s really in store for a normal user like me ?

    • Faster running code which is more easily inter-operable with other languages.

  • Here is a reply from Ramus Lerdorf about MySQL, Also looks like my interpretation of GPL is wrong – A quote I picked up from a sig..

    “Interpreting what the GPL actually means is a job best left to those that read the future by examining animal entrails.”

    List: php-general
    Subject: RE: [PHP] php5 and mysql licences
    From: Rasmus Lerdorf
    Date: 2003-06-30 17:29:00
    [Download message RAW]

    On Mon, 30 Jun 2003, Dan Joseph wrote:
    > Is the mysql client library going to be put back in for future betas? Or
    > are we mis-reading the change log and its still there?

    There will always be MySQL support in PHP of one kind or another. The
    only change in PHP5 is that we are no longer bundling the client library
    itself. Some reasons in no particular order:

    1. Most systems these days already have the client library installed.
    2. Given 1, having multiple versions of the library can get messy.
    For example, if you link mod_auth_mysql against 1 version and PHP
    against another and then enable both in Apache, you get a nice fat
    crash. Also, the bundled library didn’t always play well with the
    installed server version the most obvious symptom of this being
    disagreement over where to find the mysql.socket unix domain socket
    3. Maintenance was somewhat lax and it was falling further and further
    behind the released version.
    4. Future versions of the library are under the GPL and thus we don’t
    have an upgrade path since we cannot bundle a GPL’ed library in a
    BSD/Apache-style licensed project. A clean break in PHP5 seemed like
    the best option.

    This won’t actually affect that many people. UNIX users, at least the
    ones who know what they are doing, tend to always build PHP against their
    system’s libmyqlclient library simply by doing –with-mysql=/usr when
    building PHP.

    For the beta1 release, it went out without a mysql.dll extension because
    we haven’t quite worked out how to handle it, not because the final PHP5
    release will not have MySQL support. Of course it will and Windows users
    will not be affected.