Level: Advanced
Length: Tutorial (3 hours)
Description:
In this tutorial we are going to dive deep into PHP's Internals. It is
appropriate for people that know PHP as a language well, but are interested into finding out what goes inside in-depth.
We will start by looking at how the language parser and scanner work, which convert scripts into an Abstract Syntax Tree. When then look at how PHP internal byte code is generated from this AST, and how the engine runs byte code.
After the introduction, we will working together on extending the PHP core with a new feature.
As a treat, we'll also have a look at the OPcache extension, and see which optimisations it does to generated byte code.
Reasonable knowledge of C (or similar languages) is required to make the most of this tutorial.
What You Will Learn
-------
- How PHP works internally.
- How to extend PHP with a new feature.
- How OPcache does some of its optimisations.
Required
--------
For understanding the tutorial:
- Moderate knowledge of C
For taking part in the exercises:
- A Linux machine or Linux VM
- Compilers installed (apt-get install php-dev, or similar)
- A GIT clone of the PHP source tree (git@github.com:php/php-src.git)