Explore the Abstract Factory Pattern in PHP and understand how it can help in creating families of related objects. Discover its practical applications through real-world scenarios and examples.
Welcome to the September edition of PHP Annotated! We'll recap the most interesting developments in the PHP community over the past month, featuring handpicked news, articles, tools, and videos. Hig
I finally took a look at writing a custom live template with PhpStorm. I've used them several times to automate scaffolding a foreach statement or other random suggestions that a Tab keypress leads to automated scaffolded code. But I never really dove in to see how they work or could be customized. Then, I had to fix some of my...
The famous phploc package to measure project size was archived by Sebastian on Jan 10, 2023. I used this package to get feedback on CLI apps vendor shrink and for fast estimation of project size in Rector upgrades. That's why I needed a replacement. Fast!
In this tutorial, you'll learn how to upload and store images in an SQLite database with PHP and its Imagick extension, by building a simplistic, RESTFul, API
Here are some words of caution on the implication that the heavy use of mocks in your code base can have regarding the overall system design or architecture.
Welcome to the July edition of PHP Annotated! We'll recap the most interesting developments in the PHP community over the past month, featuring handpicked news, articles, tools, and videos. Highligh
As the digital landscape continues to evolve, PHP, one of the most popular programming languages for web development, stays ahead of the curve with its latest version — PHP 8.2.
When I want a typed object, I need to create a class in a new file, and give it a name. (While technically not required, one class per file is highly recommended to work well with tools and IDEs we have to our disposal.)...
At JoliCode we were early adopters of Docker (since late 2013). When we discovered it, we strongly believed that this tool would fit perfectly in our dev environment and allow teams to work under the same clean and reproducible environment. However, like each new piece of software,
When event sourcing, the stream of events is your source of truth where all data is derived from. A promise often made in event sourcing pitches is that you can destroy your data and rebuild (replay) it at any time. In my experience, it’s a lot more nuanced than that.
The next EAP build for PhpStorm 2023.2 is now available, and it’s an exciting one! It is the first build to include features leveraging the enormous potential of generative AI and large language model
Learn how to enhance the flexibility and maintainability of your code with the Liskov substitution principle. Discover best practices and real-world examples for writing robust and extensible software
Over the past several months, I’ve reflected a lot on my experience as a PHP developer. Specifically, I’ve shared with some friends that I couldn’t have predicted that this is where I would be when I was younger. So many aspects of my job didn’t exist back then, including the Internet as we know it […]
A new bug-fix update for PhpStorm 2023.1 is now available. You can update to it using the Toolbox App or right from inside the IDE. You can also download PhpStorm 2023.1.3 from the website. Notable ch