When I found the PHP Internals site a few months back, I noticed there was a small credit at the bottom.
Built by Thomas Punt & Liam Mann
Some Googling showed that Thomas Punt had written this How PHP Executes — from Source Code to Render article for sitepoint. While the article was accurate, like a lot of pro internet content it was a breezy, high level read that didn’t set out to get into the specifics of how all these systems worked.
Fortunatly, my Where’s the php-src/PHP-Internals Main Entry Point question over on Stack Overflow got a great response from axiac. Unfortunatly, that response demonstrates how challenging the PHP source code can be to deal with — mod_php
, php-fpm
, the php-cgi
, and the PHP CLI each have their own specific entry points into the system. Each of those entry points also interacts with systems whose inner workings aren’t always simple, straight forward C code (I’m thinking specifically of the zend_vm_gen.php
PHP program that’s used to generate C header files).
I continue to be struck with how much all this C wrangling had made me apprecaite simple things like MVC frameworks and a consensus on how code ought to be organized.