David's Coding Blog

GoPHP - 100 passed test cases

On 21 April 2024 I created the GoPHP project and started working on it. The idea was and still is to reimplement the PHP language specification to learn more about the lexer, parser and interpreter, but also about the inner workings of PHP. Today (18 March 2025) a lot of progress has been made.

In order to validate to check the correctness I use my own test cases but also check against the official test cases in the php-src repository. Of the 840 test cases, 106 pass, 15 are skipped (on Linux) and 719 still fail. So 12 per cent of test cases pass after almost a year of work. And each pass brings me closer to a compatible PHP implementation.

The latest changes are related to the following topics:

Line diagram that shows increasing passing test cases