PHP was announced on 8 June 1995, when Rasmus Lerdorf posted "Personal Home Page Tools (PHP Tools) version 1.0" to a Usenet group. So what did PHP originally stand for? Personal Home Page. Lerdorf had written a set of CGI programs in C to track visits to his online résumé and shared them so others could build dynamic pages too.
Origins: a toolkit, not a language
Lerdorf has said openly that he never set out to design a programming language. His tools handled form data, logged visitors and talked to the mSQL database. Users kept requesting features, so the tools gained variables, loops and conditionals bit by bit. In 1995 he combined them with a form interpreter, producing PHP/FI ("Personal Home Page / Forms Interpreter"). PHP/FI 2.0 was officially released in November 1997, though it had been in wide use for some time.
In 1997 two Israeli developers, Andi Gutmans and Zeev Suraski, found PHP/FI too limited for an e-commerce project at university. They rewrote the parser, and with Lerdorf's agreement it became PHP 3.0 in June 1998. With it came a new recursive name, "PHP: Hypertext Preprocessor".
What did PHP originally stand for?
The original name described the audience exactly: individuals who wanted a home page that could do more than display static HTML, such as a counter, a guestbook or a form that emailed its contents. The rename in 1998 reflected that PHP had outgrown personal sites and was being used by companies. The recursive backronym, in the style of GNU ("GNU's Not Unix"), let the three letters stay the same.
Design and key features
- Embedded in HTML: code sits between
<?phpand?>tags, so a static page could become dynamic one line at a time. - Shared-nothing request model: every request starts fresh, which makes PHP simple to host and scale horizontally.
- Built-in web features: superglobals like
$_GETand$_POST, sessions, cookies and file uploads. - Huge function library and database drivers out of the box.
- Gradual typing: scalar type declarations (PHP 7), union types (PHP 8.0) and strict mode for those who want them.
Cheap shared hosting with Apache and mod_php made the "LAMP" stack (Linux, Apache, MySQL, PHP) the default way to put a dynamic site online in the 2000s.
A short PHP example
<?php
declare(strict_types=1);
enum Status: string {
case Draft = 'draft';
case Published = 'published';
}
function label(Status $s): string {
return match ($s) {
Status::Draft => 'Not live yet',
Status::Published => 'Live on the site',
};
}
echo label(Status::Published), PHP_EOL;
Enums and match expressions come from the PHP 8 series, far from the template tags of 1995.
Versions timeline
| Year | Version | Notable change |
|---|---|---|
| 1995 | PHP Tools 1.0 | First public release |
| 1998 | PHP 3 | New parser, extensibility, new name |
| 2000 | PHP 4 | Zend Engine 1.0 |
| 2004 | PHP 5 | Zend Engine 2, real object model, PDO |
| 2015 | PHP 7.0 | Roughly double the speed, scalar types |
| 2020 | PHP 8.0 | JIT, named arguments, union types, match |
| 2021 | PHP 8.1 | Enums, fibers, readonly properties |
PHP 6, a planned Unicode rewrite, was abandoned around 2010, which is why the version numbers jump from 5 to 7. The PHP Foundation, formed in 2021 with backing from JetBrains, Automattic and others, now funds core development.
Where PHP is used today
PHP still runs a large share of websites whose server language can be detected, largely because of WordPress, released in 2003. Other major PHP software includes MediaWiki (Wikipedia), Drupal, Joomla, Magento and Nextcloud, and modern frameworks such as Laravel and Symfony. Composer, the dependency manager released in 2012, brought PHP a modern package ecosystem through Packagist.
Facebook began as a PHP application. To cope with its scale, it built the HipHop compiler and later the HHVM virtual machine and the Hack language, a PHP derivative with static typing. The pressure from HHVM helped motivate the major performance work in PHP 7.
Influence and legacy
Early PHP was criticised for inconsistent function names and insecure beginner code, but modern PHP is far stricter and faster. Its biggest legacy is accessibility: it let millions of people go from static HTML to a working web application without learning a whole new stack. Ask what did PHP originally stand for and the answer, Personal Home Page, explains its character: a practical tool built for real websites first and refined into a full language later.
Frequently asked questions
When did PHP stop meaning Personal Home Page?
The change came with PHP 3.0, released in June 1998. Andi Gutmans and Zeev Suraski's rewrite was accompanied by the recursive name "PHP: Hypertext Preprocessor". The old name was dropped because the language was no longer aimed only at personal sites.
Why was there no PHP 6?
PHP 6 was a project to add native Unicode support throughout the engine, but it ran into serious performance and complexity problems and was abandoned around 2010. Many of its other features were released in PHP 5.3 and 5.4. When the next major version arrived in 2015, it was numbered PHP 7 to avoid confusion with old PHP 6 books and articles.
Is PHP still a good choice for new websites?
For many projects, yes. Current PHP 8 releases are fast, well typed and supported by mature frameworks like Laravel and Symfony. Hosting is cheap and widely available, which makes PHP practical for content sites and custom CMS projects.







