Being fed up with Jira and such systems, I decided to revive my original #PHP issue tracking system (at least for nostalgia/experiments) which is >17 years old.
It was badly coded then and was still using the original, long-dead MySQL extension. With a few (hundred) small fixes it's starting to get back to a working state.
Now, despite its somewhat garbage code, it's simple and page loads are instant, like they should be. How does "the enterprise" get it so wrong?
How to Block XSS With htmlspecialchars
One echo can turn comments into scripts.
#php #xss #htmlspecialchars #security #howto #outputescaping
https://www.youtube.com/watch?v=vbV024fdP_Q
I was interviewed by Marcos Marcolin for the Brazilian #PHP community. It's a long interview, but I had fun with it. 🙂
https://www.marcosmarcolin.com.br/blog/php-30-years-larry-garfield-en/
Did you know PHP allows breaking multiple loop levels using an integer argument with `break`? It’s a small feature, but many developers overlook it.
💡 Read the full tip:
https://mmramadan.com/tips/53
⚡ Don’t miss any updates!
🔏 Register:
https://mmramadan.com/register
📬 Newsletter:
https://mmramadan.com/newsletter
📲 Telegram:
https://t.me/digging_code
#php #laravel #tech #developer #tips
Putting Guzzle #PHP on steroids with #Symfony HttpClient inside. 🎉
A PR I wouldn't have shipped without an LLM — and vice versa 😛
https://github.com/symfony/symfony/pull/63433
I love how CakePHP's documentation uses oven mittens to denote possibly dangerous things.

Released: laminas/laminas-cli 1.14.0
#php #laminas
https://github.com/laminas/laminas-cli/releases/tag/1.14.0
We found some old #WeCamp goodie bags. What if we raffle them to people who donate to the #PHP foundation? Would anyone be interested?
How to Avoid require_once Path Confusion
Relative paths break when scripts run from new locations.
#php #requireonce #paths #howto #bug #filesystem
https://www.youtube.com/watch?v=hK5bApChyl8
Released: mezzio/mezzio-router 3.20.0
#php #mezzio
https://github.com/mezzio/mezzio-router/releases/tag/3.20.0
i think i might be too deep in D lang metaprogramming when this is the fix for a phpmod.d bug where arguments default values on a constructor don't get propagated to the php side
- private alias argTypes = Parameters!(T.__ctor);
+ static if (is(typeof(T.__ctor) ParamTypes == __parameters)) {}
https://github.com/kaja47/phpmod.d
@edorian Like a teacher, I ask question but I know the answer.
Though I need some testing here : there is a limit to the size of the (say) binary, because #PHP will stop when the binary is too big to be represented as integer/float.
I think it might not stop if the leading digits are 0 because of no overflow.
And of course, who would write a 4GB hardcoded binary in a #PHP script?
Ah well, I guess it's me...