15 posts

Blog

Posts and notes.

Internals9 min read

PHP arrays are not arrays

One structure serves as list, dictionary and set. Packed and hashed layouts, what each costs in memory, and when a conversion happens.

Performance7 min read

Benchmarking PHP without lying to yourself

Microbenchmarks measure exactly what you tell them to, which is rarely what you meant. Method, noise, and the numbers worth reporting.

Internals8 min read

What happens when PHP runs your code

A request walks from the SAPI to the Zend VM — lexing, compilation to opcodes, the OPcache lookup that skips both, and execution.

Arrow keys to move, Enter to open.