Web Developer = Embedded Developer: Real PHP Now Runs on ESP32
php-baremetal 1.0.0 runs the real, unmodified PHP interpreter natively on ESP32 microcontrollers using minimal portability patches.
With its 1.0.0 release, php-baremetal gets the unmodified PHP interpreter — not a subset or transpiler — running natively on ESP32-class microcontrollers. The PHP source tree is vendored as-is and sha256-verified, with only 8 to 10 small, version-specific patches applied at build time to address portability issues; the engine, VM and bundled extensions remain stock PHP.
The interpreter runs through PHP's embed SAPI, compiled natively for RISC-V (P4) or Xtensa (S3) targets — no emulation involved. The memory model is the notable engineering story: code executes directly from flash via the MMU cache (execute-in-place), Zend's own arena allocator is disabled so all runtime allocations route through malloc into PSRAM, and the static SRAM footprint is held to roughly 180 KB.
For engineers, this means a fully capable PHP runtime — complete with namespaces, closures, generators, Reflection and more — can drive GPIO, serve web UIs over WiFi, and coexist with FreeRTOS's watchdog and scheduler on five-dollar hardware. Because the underlying interpreter is identical to a desktop PHP build, scripts behave identically on both, closing the usual gap between web and embedded development.
This synthesis was produced from its source by AI; there is no human editor or manual review step. How we work