Hi everyone,
We have new updates and news for you this week and every week on all things PHP. This week we have new releases from PHP 8.3.21 and PHP 8.4.7, a pre-release version of Symfony 7.3, and new updates on Laravel 12.13. In Podcasts this week we have a lot of new episodes starting with the second instalment of No Compromises podcast on their discussion on having no time. Developer Teas is back and this week they talk about they also talk about time management and how it can help you when you're burned out. Laracast snippet digs into the subject of AI, while Laravel podcast they chat with Joe Dixon about Laravel Cloud. Finally in our tutorials section we have guides on PHP performance monitoring, JSON data management, and improving HTTP error testing.
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:
|
Articles
Why You Should Use function_exists in Your PHP Helpers
In Laravel projects or any large scale PHP application it's common to create helper files that contain reusable functions. These helpers make your code cleaner and more efficient.
Laravel Observer: Its Superpowers in Event Structuring
Imagine you need to perform an action every time a user is created. Instead of writing that logic directly in the controller or the model, you can use an Observer to ensure that the logic is isolated and easier to test.
Boosting Performance with Symfony HttpClient and Parallel Requests
When developing a Symfony application that communicates with multiple APIs, it's tempting to send requests one after another. However, this approach can quickly become a bottleneck.
Architecting Laravel for Scale: Battle-Tested Patterns for Clean Code & High Performance (Part 1)
When your Laravel app starts handling millions of users, complex workflows, or high data throughput, basic CRUD just won’t cut it.
Immutable Objects in PHP: Your Secret Weapon for Safer Applications
In large-scale PHP apps, one silent killer often goes unnoticed: uncontrolled data mutation.
Developers chase bugs for hours, only to discover that something unexpectedly changed an object’s state.
Building distributed systems with RoadRunner and Laravel
I’ve been developing PHP applications for over 15 years now, working with various PHP frameworks. Throughout this journey, I’ve witnessed many projects that began as monoliths eventually need to evolve into microservices.
Clean Coding in Symfony: 7 Best Practices to Boost Readability & Maintainability
We’ve all been there — “It works for now, I’ll clean it up later.” Spoiler: Later never comes. And then one day, you open your old code and think, “Who wrote this garbage?!” …Oh wait, it was you.
|
Tutorials and Talks
Customize URL Handling with Laravel's Macroable URI Class
Laravel enhances URL manipulation with the addition of the Macroable trait to the URI class, enabling developers to create custom URL handling methods that integrate seamlessly with the framework's elegant syntax.
Improve HTTP Error Testing with Laravel's requestException() Method
Laravel enhances developer testing capabilities with the addition of requestException(), a convenience method that simplifies creating HTTP client exceptions for more effective error testing.
How to Fix PHPMailer Connection Failed Error in PHP
If you're encountering the error message "Connection failed. Error #2: stream_socket_client(): Unable to connect" while using PHPMailer to send emails, you're not alone.
Filament Widgets: Grid Layout, Dashboard & Responsive Design
In this guide, we’ll explore how to define a custom dashboard by leveraging inheritance, responsive column layouts, and dynamic widgets.
A Guide To Developers for PHP Performance Monitoring
Poor performance can make scaling and maintaining a PHP application difficult. Therefore, it’s essential to identify errors and bottlenecks early using PHP performance monitoring tools.
Parallel Processing with PHP (Part 3): multiplexed Inter-Process Communication with `stream_select()`
In PHP, process forking via pcntl_fork() offers a powerful way to execute tasks in parallel, a technique particularly useful for building CLI daemons, task runners, and background processors.
How to Simulate Laravel and Vue.js Production Deployment Locally?
This article will guide you through the steps to simulate a production deployment locally, allowing you to test your compiled assets, configuration settings, and the overall performance of your app in a real-world-like environment.
Your Guide to Simple JSON Data Management with PHP
This article will walk you through a handy PHP script, the JsonCRUD class, which lets you perform basic Create, Read, Update, and Delete (CRUD) operations directly on a JSON file. It's lightweight, easy to understand, and can be a real lifesaver for certain scenarios.
Real-Time Laravel with Reverb on Docker: Professional Setup Guide
This article describes a professional approach to implementing real-time features in a Laravel application using Laravel Reverb (WebSockets) within a Dockerized environment. The setup is secure, scalable, and easy to maintain. |
News and Announcements
Name Queued Closures in Laravel 12.13
The Laravel team released v12.13.0, which includes naming queued closures, a new assertRedirectBack() test assertion, callback support for Collection's containsOneItem() method, and more.
NativePHP Hit $100K — And We're Just Getting Started
Today, I get to write something I’ve only ever dreamed about saying: NativePHP has officially passed $100,000 in sales. Let me say that again — one hundred thousand dollars. All from Laravel developers who saw what we’re building and said, “Yes. I want in.”
PHP 8.3.21 and PHP 8.4.7 Released!
The PHP development team announces the immediate availability of PHP 8.3.21 and PHP 8.4.7. This is a bug fix release.
Symfony 7.3.0-BETA2 released
This is a pre-release version of Symfony 7.3. If you want to test it in your own applications before its final release.
May 5–11, 2025: A Week of Symfony #958
This week, we published the second beta of Symfony 7.3, ahead of its final release later in May 2025. Meanwhile, we continued sharing posts about the new features of Symfony 7.3 and the upcoming SymfonyOnline June 2025.
|
Podcasts and Vlogs
The Stack Overflow: Is the enterprise (actually) ready for AI?
Maryam Ashoori, Head of Product for watsonx.ai at IBM, joins Ryan and Eira to talk about the complexity of enterprise AI, the role of governance, the AI skill gap among developers, how AI coding tools impact developer productivity, what chain-of-thought reasoning entails, and what observability and monitoring look like for AI.
No Compromises Podcast: Finishing up our discussion on not having time
Picking up where last week’s “Why ‘no time’ really means ‘no priority’” left off, Joel and Aaron tackle the next hurdle: what to do once the benefits are crystal‑clear but you (or your team) still hesitate.
North Meets South Podcast: Constant interfaces, nested input, and array access
In this episode, Jake and Michael discuss using interfaces as a dictionary of constants, working with and testing inputs passed down multiple layers of the application, and refactoring legacy code with PHP's ArrayAccess interface.
Software Engineering Radio: SE Radio 667: Ashley Peacock on Cloudflare
Ashley Peacock, the author of Serverless Apps on Cloudflare, speaks with host Jeremy Jung about content delivery networks (CDNs). Along the way, they examine dependency injection with bindings, local development, serverless, cold starts, the V8 runtime, AWS Lambda vs Cloudflare workers.
Developer Tea: Take Back Your Time - Volatility, Pliability, and Agency and Your Obligations
This episode provides tactical ways to own your time, reduce meeting load and obligations, and regain agency, especially when feeling burnt out.
Shoptalk Show: 664: Figma Sites, CSS Carousels, and Internship Prep
How much would you pay for new users, initial thoughts on Figma's announcements, CSS carousel follow up, favicon easter eggs, how do you prepare for an internship, and why aren't more developers using logical properties?
WP Builds: 421 – “At The Core” with Birgit Pauli-Haack and Fabian Kaegy – Episode 3.
In this episode of WP Builds’ “At the Core,” Nathan Wrigley is joined by Birgit Pauli-Haack and Fabian Kaegy to discuss recent developments in WordPress, especially the 6.8 release.
Laracast Snippet: The AI Episode
In this episode, we dig into the subject of AI... and whether it's going to steal your job or not. Don't worry: no bait in this video. Just an honest conversation about where we are, and what it all might mean.
Laravel Podcast: The Making of Laravel Cloud: Behind the Scenes with Joe Dixon
In this episode of the Laravel Podcast, host Matt Stauffer chats with Joe Dixon, Engineering Team Lead at Laravel. Joe shares his journey to Laravel, his experiences working on Vapor and Reverb, and the transition to Laravel Cloud.
PHP Architect: The PHP Podcast: 2025.05.08
This week on the PHP Podcast, Eric and John discuss PHP Tek 2025, the PHPxSan Diego Meetup, a long-time dormant backdoor, open-source AI frustrations, and more.
Mostly Technical: 82: Peak Bubbly
Ian and Aaron talk about getting feisty on Twitter, a possible AI bubble, NativePHP, an awesome game idea for Laracon, and more.
Syntax: JS News: New React & Svelte APIs, RSC Updates, Redwood and Storybook
Discussion of new JavaScript APIs and framework updates including React animations, Svelte asynchronous components, React Server Components in Parcel, RedwoodJS pivot, and Storybook 9 updates.
The Changelog: A critical look at MCP
Rasmus Holm takes a critical look at MCP, Stefan Judis shares a new term he learned from Scott Hanselman, Raf beautifully describes the curse of knowing how, Void is an open source Cursor alternative & React Jam is back for its 6th online game jam.
|
Strategy Pattern: Because Your Giant if Statement is Crying for Help
As projects grow, so does the complexity of decision-making logic — often leading to tangled webs of if statements, switch blocks, or bloated classes.
PHP Type Juggling Vulnerability: Exploitation and Defense
PHP is a loosely typed language, meaning it automatically converts variables from one data type to another in certain contexts. While convenient, this behavior can lead to security vulnerabilities when comparisons (== or !=) are used instead of strict comparisons (=== or !==).
Error handling and strategies
In the world of business application development, especially those built on the principles of Domain-Driven Design (DDD), error handling is an important architectural element.
Effortless Date Handling in Laravel Using Carbon
Date and time handling is core to most web applications — whether you’re logging user activity, publishing content, or scheduling events.
Design Patterns in PHP Explained: Abstract Factory vs. Factory Method
In this article, we’ll break down the key differences, provide real-world examples from an e-commerce app, and help you decide when to use each.
How to Leverage Event-Driven Architecture in PHP for Better Scalability
Let’s dive deep into how event-driven design works, why it matters, and how to start without overwhelm.
|
Interesting Projects, Tools and Libraries
urbanindo/yii2-elasticmemcache
Yii2 component for elastic memcache without node discovery plugin.
rodrigopedra/laravel-query-logger
Laravel query logger.
brightzone/gremlin-php
gremlin-server client for php.
enl/flysystem-cloudinary
Cloudinary adapter for Flysystem.
togos/xml-rdf-parser
Library for XML and XML+RDF parsing.
spryker-feature/shipment-product-offer-service-points-availability
Shipment Product Offer Service Points Availability [feature].
arkonsoft/ps-module-core
Core utilities for PrestaShop module.
modethirteen/hyperplug
A PHP library for plugging into HTTP sockets.
kdebisschop/php-etl-google-analytics-extractor
Extract, Transform and Load data using this PHP written migration library.
ignome/easy-sms
The easiest way to send short message.
|
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 16. 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?
|
|
|
|