The History of PHP

Revision as of 13:39, 13 May 2009 by Neil (Talk | contribs)

Revision as of 13:39, 13 May 2009 by Neil (Talk | contribs)

PreviousTable of ContentsNext
About PHP EssentialsAn Overview of PHP


<google>BUY_PHP</google>


Every once in a while a person faces a particular problem or requirement to which there appears to be no existing solution. Faced with this problem the person decides to create a solution to provide the needed functionality.

Having developed the solution to their problem it then occurs to them that others may need to solve the same problem, and they decide to make their solution freely available to others who, in turn, can use and improve on it. Within a short period of time many people adopt the technology and work on it, adding new features they feel will be useful. The solution soon grows beyond expectations in terms of features and is adopted by more people than the original creator could ever have imagined.

The history of PHP is just such a story.

The Creation of PHP

The first version of what came to be known as PHP was created in 1995 by a man named Rasmus Lerdof. Rasmus, now an engineer at Yahoo!, needed something to make it easier to create content on his web site, something that would work well with HTML, yet give him power and flexibility beyond what HTML could offer him. Essentially, what he needed was an easy way to write scripts that would run on his web server both to create content, and handle data being passed back to the server from the web browser. Using the Perl language, he created some technology that gave him what he needed and decided to call this technology "Personal Home Page/Forms Interpreter". The technology provided a convenient way to process web forms and create content.

The name "Personal Home Page/Forms Interpreter" was later shortened to PHP/FI and eventually renamed to represent "PHP: Hypertext Preprocessor". The name is said to be recursive because the full name also includes the acronym "PHP" - an odd geeky joke that is common in technology circles when people have trouble naming things. GNU is another recursive name that represents "GNU's Not Unix".

PHP/FI version 1.0 was never really used outside of Rasmus' own web site. With the introduction of PHP/FI 2.0 this began to change. When PHP 3 was released in 1997, adoption of PHP exploded beyond all belief.

PHP 3 Hits the Big Time

<google>ADSDAQBOX_FLOW</google> By the time 1997 arrived the number of web sites on the internet was growing exponentially and most of these web sites were being implemented using the Apache web server. It was around this time that Andy Gutmans and Zeev Suraski launched the PHP 3 project, a project designed to take PHP to the next level. One of the key achievements of the PHP 3 project was to implement PHP as a robust Apache Module.

PHP 3 was implemented using a modular approach that made it easy for others to extend functionality, and also introduced the first elements of object-orientation that would continue to evolve through subsequent releases.

The combination of PHP 3 and Apache quickly lead to the widespread adoption of PHP, and it is commonly estimated that, at its peak adoption level, PHP3 was used to power over 10% of all web sites on the internet.


PHP 4 - Optimization, Scalabilty and More

With PHP 4 Andi Gutmans and Zeev Suraski once again re-architected PHP from the ground up. PHP 4 was built upon a piece of technology called the Zend Engine. The move to the Zend Engine brought about a number of key improvements in PHP:

  • Support for other web servers (Microsoft's Internet Information Server (IIS) being of particular significance).
  • Improved memory handling to avoid memory leaks (one of the most difficult types of problems to isolate in a program).
  • Improved efficiency and performance to support large scale, complex, mission critical enterprise application development using PHP.

In addition PHP 4 also built on the earlier Object Oriented Programming features of PHP 3 with the introduction of classes.

PHP 5 - Object Orientation, Error Handling and XML

The main, though far from only, feature of PHP 5 is the improved support for Object Oriented Programming (OOP). In addition, PHP 5 introduced some features common in other languages such as Java like try/catch error and exception handling.

PHP 5 also introduced new extensions aimed at easing the storage and manipulation of data. Significant new features include SimpleXML for handling XML documents, and SQLite, an embedded basic and easy to use database interface.

How Popular is PHP?

A quick review of some statistics gives a very clear indication of the phenomenally widespread use of PHP. A company called Netcraft specializes in recording data about the types of web servers and web server modules that are used on the internet. As of April 2007 Netcraft reported that PHP was used on over 20,000,000 distinct web domains.

A web survey by SecuritySpace also lists PHP as the most widely deployed Apache module. It is safe to say that PHP has taken the internet by storm.

As if that wasn't enough one of the world's most popular web sites, Wikipedia, is build primarily using PHP.