Popular frameworks
WordPress
If you have ever read a private blog, there is a good chance it was hosted on the WordPressplatform. It is an open-source framework you can use to create a website, blog, or app, with thousands of plugins, themes, extensions, etc. It offers easy installation and configuration and is a great starting point, especially for those that place a higher value on development speed than a solution 100% tailor-made for their use-case.
Symfony
Symfony is a high-performance PHP framework and a set of PHP Components at once. The Symfony philosophy places a high value on best practices, standardization, and interoperability of applications, along with developer satisfaction, which means that building applications with Symfony is a fast and architecturally well-tested process, which offers the best of both worlds — speed and a highly-customized solution for your needs.
Laravel
Laravel is a “PHP Framework for Web Artisans” and thus places great value on beautiful code. One of its core design points are Bundles, which are a modular packaging system that makes Laravel the best choice for those that want a completely bespoke solution, though at the price of a slightly slower development speed than e.g. Symfony offers.
The Stack
PHP has historically been found most commonly in the LAMP Stack (Linux, Apache, MySQL, PHP), but, nowadays, it is completely platform-, server-, and database-independent. It can be used to write RESTful servers, which pull data from NoSQL databases and forward them to Javascript-framework-based front-ends, or to write full-stack PHP applications built on top of a PostgreSQL database, using the framework’s own templating engine.
Technology
PHP is a scripting language that can be used with a stand-alone interpreter or embedded into HTML and served through a web server with the appropriate PHP module — common choices being Apache and Nginx.
When used embedded in HTML, the PHP interpreter will only process the PHP code within the PHP delimiters (most commonly <?php ?>
).
In the last two major versions (5 and 7, 6 was skipped), PHP has added type declaration support to the language for:
- 5.0 — classes and interfaces,
- 5.1 — arrays,
- 5.4 — “callables”,
- 7.0 — scalars and function return types.
PHP is an Object-oriented Programming language (since PHP 3), and with object handling having been completely rewritten in PHP 5, its performance and feature set have much improved. It uses classical inheritance and, since PHP 5, supports private and protected member variables and methods, abstract classes and methods, final classes and methods, a standard way of declaring constructors and destructors, and interfaces along with multiple interface implementation support.
PHP Implementations
There are several implementations of PHP. The original implementation, which is also the only complete and most widely used one, is the Zend Engine interpreter, which compiles PHP code on-the-fly. It is also considered the “reference implementation” of PHP.
The most popular “competitor” of the Zend Engine is the HipHop Virtual Machine — HHVM — created by Facebook, which uses just-in-time compilation to achieve up to 600% performance boosts by compiling PHP into an intermediate bytecode, which is then translated into x64 machine code dynamically at runtime.
Conclusion
So, is PHP right for you? There can hardly be any doubt. It has been around since the world wide web was still in proverbial diapers and has grown together with it.
Feel free to use PHP in your projects.