Hi everyone,
Laravel 13 was launched last week and for those interested in catching up with the features of this release, there's a highlight article and even a tutorial on building a Universal Enum Cast in Laravel 13. And speaking of tutorials, this week we have guides on Automatically Deploying Drupal Projects with GitHub Actions, How to Take a Website Screenshot with PHP, and what HTML forms actually do. In Podcasts we have new episodes from North Meets South Podcast, and this week they dive into modern infrastructure security practices, while Developer Tea says Decision Making is Your New Core Skill. Finally in our Reading section we have articles on Mastering Time in Symfony, The Decorator Pattern in PHP, and What a ML Model Really Is (From a Mathematical Perspective).
We have all that and more, so we do hope you enjoy this week's newsletter. If you have an article, tutorial or podcast that you would like to be featured in our newsletter, feel free to reach out to us at [email protected].
All the best,
Adrian
|
Please help us by clicking to our sponsors:
Give Your Unused Startup a Second Chance
List your unfinished SaaS, app, or project for free. Sell it, find a co-founder, or let someone else bring it to life. No fees, no hassle - just new opportunities!
|
Articles
Laravel 13 Highlights
Laravel 13 dropped last week. The biggest takeaway is that it’s a "zero breaking changes" release for most. It’s mostly about modernizing the syntax and embracing AI.
Working with Money in PHP: The Value Object Approach
Financial software isn't like building a blog or todo app. When users click «Pay $99.99» they expect exactly $99.99 to leave their account - not $99.989999999 or $100.000000001.
Code Conciseness: Why Small Functions Make a Big Difference
Welcome to the world of coding, where less really is more! In this article, we’re going to explore the idea of using shorter functions. Think of them as the superheroes of coding, they make your code easier to read, fix, and enjoy.
PolyShell: How a PHP File Can Be Uploaded to a Server via the Magento 2 REST API
Magento 2 (up to 2.4.7-p9 / 2.4.8-p4) has a critical vulnerability in how custom options are processed via the REST API.
Running Laravel Queue Workers in Production — Supervisor vs Horizon
In this article, we’ll explore how Laravel queue workers run in production and when to use Supervisor or Horizon.
The Power of Dying Young: PHP’s Blueprint for Scalable Backend Architecture
I was reading through a Laravel codebase and kept thinking: where does the application “start”? In Spring Boot, there’s a main() method. In Go, there's func main(). The app boots, beans get wired or goroutines get spawned, and then the process sits there listening. In PHP, I couldn’t find that equivalent. Because it doesn’t exist the way I expected.
|
Tutorials and Talks
Building a Multi-Region Cron System for Video Freshness
Keeping video content fresh across multiple regions requires a well-designed cron system.
How I Implemented Inventory Forecasting Algorithms in a WordPress Plugin
When building StockPulse, the core challenge was: how do you calculate reliable inventory forecasts when different products have wildly different sales patterns?
Automatically Deploying Drupal Projects with GitHub Actions (Modules, Themes & Config)
In this guide, I'll show you how to automatically deploy a Drupal project using GitHub Actions, including custom modules, themes, and configuration changes.
How to Take a Website Screenshot with PHP
I want to walk you through the full process of taking website screenshots from PHP today. Not theory, not a library overview -- the actual thing.
HTML Contact Forms Don't Send Email (Here’s What Actually Does)
HTML forms don’t send email. They never did. Here’s what’s actually going on and how to build one that works.
Unix File Permissions Explained: Why chmod 777 Is Never the Answer
Every developer has done it. Your deployment script fails with "Permission denied." You are tired. It is 11 PM. You type chmod 777 /var/www/html and everything works. You go to bed. Three months later, your server is compromised because every user on the system could write to your web root, and an uploaded PHP file gave an attacker a shell.
Creating a Universal Enum Cast in Laravel 13
This guide details how to build a Universal Enum Cast that handles data safely, supports custom UI metadata, and maintains a clean, identifier-focused schema. |
News and Announcements
NativePHP v3.1: The Biggest Performance Leap Yet
NativePHP v3.1 just dropped. And it’s not a minor bump. This is the single biggest performance update we’ve ever shipped. 10x faster response times. Background job processing. Android 8+ support. Full ICU on iOS. And a whole lot more.
Laravel Prompts v0.3.15 Adds Streaming, Tasks, Autocomplete, and More
Laravel Prompts v0.3.15 is out and it introduces several new features that make it easier to create interactive, real-time, and even AI-driven terminal applications.
Twig 3.24.0 released
Twig 3.24.0 has just been released with a major new feature for working with HTML attributes, improved null-safe operator behavior, and variable renaming in object destructuring.
March 16–22, 2026 - A Week of Symfony #1003
This week, the upcoming Symfony 8.1 version added new options to the `messenger:consume` command, introduced a way to retrieve the original command input arguments and options, and added an option to map empty data using `MapQueryString` and `MapRequestPayload`. In addition, we released Twig 3.24.0, which includes new features related to HTML attributes, improved null-safe operator behavior, and support for variable renaming in object destructuring.
Laravel Live Denmark Returns to Copenhagen in August 2026
20–21, 2026, in Copenhagen. The event brings together more than 300 Laravel and PHP developers for two focused days of technical talks, networking, and community connection.
|
Podcasts and Vlogs
The Stack Overflow: Multi-stage attacks are the Final Fantasy bosses of security
Ryan welcomes Gee Rittenhouse, VP of Security at AWS, to the show to discuss the complexities of multi-stage attacks in cybersecurity and how these attacks unfold, the challenges in detecting them, and the evolving role of AI in both enhancing security and creating new vulnerabilities.
North Meets South Podcast: OIDC, bastion hosts, and production safety
In this episode, Jake and Michael dive into modern infrastructure security practices, sparked by an annual audit and the painful process of rotating AWS IAM tokens. That experience leads into a broader discussion on why long-lived credentials in GitHub Actions are risky, and how OIDC (OpenID Connect) enables a more secure, short-lived, role-based alternative.
Software Engineering Radio: SE Radio 712: Dan Lorenc on Sigstore
Dan Lorenc, co-founder and CEO of Chainguard, joins host Priyanka Raghavan to explore Sigstore and its role in securing the software supply chain.
Developer Tea: Decision Making is Your New Core Skill, So it's Critical to Avoid These Two Traps of Collaborative Decision-Making
The Bottleneck Is Moving: Borrowing from traditional manufacturing theory, the coding step used to define your team's total throughput.
Shoptalk Show: 707: RSS with Social, AI Agent Traffic, and What to Blog About
Listener John has a VSCode extension to share, Chris muses on why nobody has attempted to build the social side of RSS, a listener is experimenting with feature-based folder structures, how do you feel about AI traffic on your website, what can someone blog about in 2026, and Digg gets dugg by bots.
WP Builds: 461 – From support to CEO: Jon Penland’s journey at Kinsta
In this episode, Nathan Wrigley talks with Jon Penland, CEO of Kinsta, about his career journey from self-education in tech to leading a rapidly growing company.
PHP Architect: The PHP Podcast 2026.03.19
We discussed Elizabeth Barron’s appointment as Executive Director of the PHP Foundation and recommended checking out the extended Alive & Kicking interview from Tuesday (it’s really good!).
Mostly Technical: 124: Old Man Yells At Cloud
Ian and Aaron talk about choosing between Faster.dev & Solo (which one is more likely to pay off?), the pros and cons of using AI to build bespoke internal apps, youth sports, Project Hail Mary, and so much more.
Syntax: State of JS 2025
Scott and Wes dig into the latest State of JS survey results, breaking down which JavaScript libraries, frameworks, and tools are rising, falling, or holding steady in the ever-shifting JS ecosystem.
|
|
Mastering Time in Symfony with the Clock Component
Time is everywhere in software systems. Tokens expire, subscriptions have grace periods, retries wait a few seconds before running again, background jobs are delayed, scheduled tasks run at specific times. Whether we notice it or not, a lot of business logic depends on time.
Passkey Management and Account Recovery in Symfony
In Part 1 and Part 2, we built a fortress. We implemented WebAuthn, gracefully handled hybrid password fallbacks and created a frictionless login experience using Conditional UI (autofill).
The Decorator Pattern in PHP — From Problem to Solution
As applications grow, new requirements appear: logging, caching, monitoring, security checks, and more. A common mistake is to modify an existing class every time a new need arises. Before long, a class that once did one thing now does five things poorly — harder to read, harder to test, and almost impossible to change without breaking something.
Laravel Policies vs Gates: Understanding Authorization
In modern web applications, security is not only about authentication but also about authorization. In Laravel, authorization determines what authenticated users are allowed to do within the system.
What a ML Model Really Is (From a Mathematical Perspective)
When we talk about a model in machine learning, it helps to immediately drop all associations with “artificial intelligence” and complex abstractions.
Symfony Service Decoration: Extending Core Services Without Changing Code
How Symfony transparently decorates core services using the Decorator pattern to add features without touching the original code.
|
Interesting Projects, Tools and Libraries
greenlion/php-sql-parser
A pure PHP SQL (non validating) parser w/ focus on MySQL dialect of SQL.
dominikb/composer-license-checker
Utility to check for licenses of dependencies and block/allow them.
ghostwriter/event-dispatcher
Event Dispatcher implementation.
stechstudio/filament-impersonate
A Filament package to impersonate your users.
shipmonk/name-collision-detector
Simple tool to find ambiguous classes or any other name duplicates within your project.
kitloong/laravel-migrations-generator
Generates Laravel Migrations from an existing database.
amphp/windows-registry
Windows Registry Reader.
bref/laravel-bridge
An advanced Laravel integration for Bref, including Octane support.
sonata-project/admin-bundle
The missing Symfony Admin Generator.
swissspidy/phpstan-no-private
PHPStan rules for detecting usage of pseudo-private functions, classes, and methods.
|
Jobs
------
Do you have a position that you would like to fill? PHP Weekly is ideal for targeting developers and the cost is only $75/week for an advert. Please let me know if you are interested by emailing me at [email protected] |
Please help us by clicking to our sponsor:
Protect your PHP Code
Why not try SourceGuardian 17. Click here to download a 14 Day Trial copy. Protect your code using Windows, Linux or Mac and run everywhere with our free Loaders. |
So, how did you like this issue?
|
|
|
|