PHPTek 2026
Monday, 25 May 2026Last week, I was in Chicago for the PHPTek 2026 conference, where I gave two talks, one about upcoming changes in PHP 8.6 and the other about semantic versioning. Between the formal sessions and the informal hallway track conversations, I left the conference with plenty of new ideas for both PHP applications and future language improvements.
Tuesday
The conference started on Tuesday, and after the opening keynote, I chose to
attend "Know Your Enemies: Live Exploit of a PHP Engine Security Breach" for
the first round of sessions. Having dealt with a PHP security release recently,
I found it fascinating to see how security bugs could be exploited. While the
RCE added in c730aa2 using the HTTP_USER_AGENTT header was
obviously malicious (the git server where PHP was developed was compromised),
I hadn't previously understood how GHSA-3cr5-j632-f35r,
where improper sanitization led to server-side request forgery, could be
exploited.
After two more rounds of talks, I opted to attend the BattleSnake hackathon and work on creating my own snake. I decided to code the snake from scratch, rather than using any of the provided starter code, and by the end of the hackathon I had a very basic snake that would just move randomly. It isn't any good, but it provides a foundation for future improvements.
Wednesday
In the morning on Wednesday, I attended talks about NativePHP and Nginx. I found NativePHP fascinating, though not too applicable to my own development, since I don't work on mobile apps. For Nginx, I definitely learned some new tricks.
In the afternoon, in addition to attending sessions by others, I also gave my
first presentation of the conference, "PHP 8.6: The Inside Scoop". A copy of
the slides is available on my site. Because PHP 8.6 is still in
active development, I had to keep updating that talk up until I gave it. One of
the RFCs that had been in voting, about improvements to the uri extension, was
approved earlier the same day.
I ended that talk by asking if anyone in the audience had any requests for features to include in PHP 8.6. I can't promise that I would be able to implement the requested features, or that they would be accepted by the internals community, but I promised I would take a look. Between the requests at the end of my talk and other discussions I had with developers throughout the conference, I have a few ideas for things to work on.
Thursday
Thursday marked the last day of the conference. Unlike Tuesday and Wednesday, the Thursday keynote was at the end of the day, meaning that we dove straight into the various sessions. With so many good options to choose from, I had a hard time deciding which sessions to attend; thankfully, the sessions were recorded, and I can watch the ones I missed at a later date.
In the afternoon, I gave my second talk of the conference, about semantic versioning. That presentation went by a bit faster than expected, and even after going over the code examples, we still ended a few minutes early. If I present on semantic versioning at a future conference, I'll be sure to expand on the edge cases that should be considered breaking changes, rather than just focusing on the cases which should not be considered breaking changes. A copy of those slides is also available on my site.
Next steps
Now that PHPTek is over, I have started work on my talk proposals for Longhorn PHP. In addition to some talks, I also plan to submit a proposal for a workshop about building PHP extensions.
This blog post also serves as a test for the new RSS feed that I added last week - hopefully, I'll be told that the feed worked properly.
Overall, PHPTek was a great conference, and I'm looking forward to returning next year.