Flattr this!

Last June 8, Robert Eisele launched a new forked PHP version that he derived from PHP 5.3.6. It is the result of merging several changes that he wanted to make to PHP, on which he has been working for the last 3 years.

This PHP fork version code is available on GitHub for anybody to download or even fork it again.

The new version of PHP’s name and license restrictions PHP

Before commenting on the fact that this new version of PHP, I would like to mention some details about what you can do and what not to do when you create a new version of PHP with a fork.

PHP is an open source software. You can get the source, modify it to suit your needs, and even extend it. PHP, which is based on the license Apache, do not even require you to publish your changes, unlike, for example, the GPL.

The only requirement is that, if you distribute a modified version of PHP, you must give your new version under a different name.Name must not contain any PHP expression. Thus, you can not call a forked version of PHP something like Turbo PHP, PHP, 2011, or anything that involves a new name in the PHP version.

Given that in case you are wondering why Facebook was allowed to call their implementation of the compiler PHP, PHP HipHop, let me clarify the following.

HipHop PHP does not plug the base code PHP. Facebook developers wrote HipHop PHP from scratch, without getting them from the code base code distribution of PHP. Since PHP license restrictions do not apply to HipHop PHP.

Restricting the use of the word PHP in the name of a forked version of PHP is simply a license requirement PHP.PHP is not the owner of the trademark PHP word, so they can not restrict the use of PHP in the words of other applications that are not derived from the main PHP code is controlled by a group of PHP.

Changes made in this release concerning the official PHP 5.3.6, are numerous. I will not repeat them here, because you can read about them in the announcement post mentioned above.

I would just like to emphasize that this is not a trivial effort. This is certainly a result of the work that Robert has done over a long period of time. I’ve never heard about the work of Robert so far, but as far as I could see, Robert, it seems a very capable developer.

However, you may be wondering if you should use this version of PHP forked, but not the main official version of PHP 5.3.6.

Personally, I think that this is not good for the PHP community to dilute our efforts and create a lot of forked versions. It would be better if there was a version of PHP functions that are all different developers can contribute. This is why PHP should be such a popular language. It was written hundreds if not thousands of developers.

However, sometimes this is impossible. Sometimes, there are developers who have strong feelings and characteristics that should be the core PHP developers do not agree to their inclusion in the implementation of basic PHP.

The eternal debate of the PHP internal list, which proposed procedures should be included or not very common.

Sometimes, the function simply can not be accepted because a supporter did not provide any code to implement the functions. In other cases, even if the code to implement features to offer is available as a patch, there is always someone that objects, for the reason that it is sometimes difficult to understand.

In some cases, the discussion seems to take forever because of simple detail, but all agree on the implementation of the proposed functions. So it was namespace support PHP. All agreed that PHP would benefit from a name, but there was no consensus on the nature of which should be used as a name separator. You had to be treated with a vote to decide whether to choose a name separator character.