Hi everyone,
It's another Thursday and with it comes a new edition of PHPWeekly. Your weekly resource for news, updates and announcements about the PHP community. This week we have a deep dive on the PHP Ecosystem, as well as an exploration on how Superglobals are used in PHP 8. We also have an article on PHP error handling, and implementing atomic design principles in Laravel. In Tutorials we have guides on faster database queries, Debugging PHP with VSCode and XDebug, and documenting API requests with Scramble. Finally in our Podcast section we have new episodes from Laravel Podcast where they talk bout the future of Laravel's starter Kits. Concentric circles, eleoquent values and application monitoring are some of the topics covered on this week's North Meets South Podcast.
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
Route Declaration Order: Laravel's Hidden Routing Rule
Ever wondered why your custom Laravel routes suddenly disappeared? Trust me, you're not alone. I've spent countless hours debugging this exact issue – and now I'm sharing the solution that will save you major headaches.
PHP Ecosystem Deep Dive: The Code Quality Landscape
I wanted to see the big picture of PHP code in the wild, so I went all in. I downloaded the entire PHP ecosystem—a whopping 236 GB of Git repositories containing a total of 2.3 billion lines of code.
PHP Superglobals: Usage, Security, and Best Practices in Modern Development
In this article, we’ll explore how Superglobals are used in PHP 8, their role in frameworks like Symfony and Laravel, their security risks, and best practices. We’ll also provide good and bad examples of their usage.
Clean Code, Happy Devs: Laravel Best Practices You Wish You Knew Sooner!
In this article, we’ll explore these essential Laravel best practices, from structuring your code to optimizing database operations, ensuring your projects stay efficient and developer-friendly.
PHP Error Handling and Exceptions: Best practices for robust applications
In this article, we’ll explore the principles of PHP error handling, the use of exceptions, proper logging practices, the integration of advanced logging tools like Sentry and Graylog, and how modern PHP — as well as popular frameworks like Symfony and Laravel — approach error management.
Implementing Atomic Design Principles in Laravel
In this blog post, we’ll review how to use these principles in a Laravel application.
|
Tutorials and Talks
Cleaner Queue Chains with Laravel's Enum Integration
Laravel now supports direct use of backed enums with the Bus facade's onQueue method, eliminating the need to manually access the enum's value property. This improvement creates cleaner, more expressive code when working with job chains and queues.
Ensuring Secure URLs in Laravel Applications
Laravel's forceHttps method provides a straightforward way to enforce HTTPS for all generated URLs in your application. This feature ensures that your links, redirects, and assets always use secure connections in production environments.
In-depth guide on documenting API requests with Scramble
When documenting the endpoints of your API, you can mentally split the task into documenting the request part (authentication, request body, request parameters) and documenting the response part. In this guide, we'll do a deep dive into request documentation.
Debugging PHP with VSCode and XDebug: A Step-by-Step Guide
This guide will walk you through setting up XDebug, enabling breakpoints, stepping through code, using stack traces, and troubleshooting common issues.
How to Configure Virtual Hosts on XAMPP for Laravel on Windows 10
In this guide, I’ll show you exactly how to configure virtual hosts on XAMPP for Windows 10. And trust me—it’s simpler than it sounds. Ready? Let’s roll!
Faster Database Queries With This One Trick
Ever wonder why your Laravel app slows to a crawl with just a few hundred records? The answer might surprise you—and it's hiding in plain sight.
Advanced Query Techniques for Laravel API Development
This article will explore various advanced query techniques for building efficient and scalable APIs with Laravel.
Simplified HTTP Response Mocking in Laravel Tests
Laravel streamlines testing HTTP interactions with its elegant shorthand syntax for HTTP response fakes. This approach substantially reduces code verbosity while making your test mocks more intuitive. |
News and Announcements
CakePHP 5.2.0-RC1 RELEASED
Improvements: ConsoleIntegrationTestTrait::debugOutput() makes it easier to debug integration tests. Custom exceptions can have specific error handling logic defined in ErrorController + more.
Laravel MongoDB 5.2 Released: Support for Laravel 12, Laravel Scout, Vector Search, and more
The MongoDB PHP team released version 5.2.0 of the Laravel MongoDB integration.
MoonShine v3: Key Changes and New Features in the Open-Source Admin Panel for Laravel
We will explore improvements in installation and configuration, support for different configuration approaches, enhancements in field management, new integration opportunities with APIs, and better work with components and menus.
Temporary Context Scope in Laravel 12.1
The Laravel team tagged v12.1.0—the first minor release of Laravel 12—which includes a context scope method, an Arr::partition() method, a getRawSql() method on query exception instances, and more.
A Week of Symfony #949 (3-9 March 2025)
This week, the upcoming Symfony 7.3 version renamed the JsonEncoder component to JsonStreamer, added support for Valkey schemes in the Cache component and introduced a field_id() form helper.
Laravel Live Denmark 2025
Laravel Live Denmark is back with the second edition. Join over 300 other Laravel and PHP enthusiasts from around the world for two days of learning, 16 speakers and more within the Laravel community.
|
Podcasts and Vlogs
The Stack Overflow: Sharing the power of the command line
Ryan welcomes Zach Lloyd, founder and CEO of Warp, to the show to talk about reimagining the terminal. They also discuss why Warp was built in Rust (“it’s definitely harder”), how AI is transforming developer tools, and what Zach (formerly a principal engineer at Google) learned building Docs and Sheets.
North Meets South Podcast: Concentric circles, eloquent values, and application monitoring
In this episode, Jake and Michael discuss circles of influence and information, eloquently handling return of single values from the database, and monitoring tools for your applications.
Maintainable Podcast: Noémi Ványi: Only Fix Problems That Are Actually Problems
Not every messy piece of code needs a refactor. Noémi Ványi, Senior Software Engineer at Xata, joins Robby to discuss how to develop the intuition to know when refactoring is truly necessary and when it’s just unnecessary churn.
Software Engineering Radio: SE Radio 658: Tanya Janca on Secure Coding
Tanya Janca, author of Alice and Bob Learn Secure Coding, discusses secure coding and secure software development life cycle with host Brijesh Ammanath. This session explores how integrating security into every phase of the SDLC helps prevent vulnerabilities from slipping into production.
Shoptalk Show: Conspiracy Theory Theories, View Transitions vs CSS Animations, and Autocomplete
It's a speed run meeting edition episode and we're talking conspiracy theories, getting hypnotized, disinformation on TikTok vs the news, view transitions vs CSS animations vs the web animation API, follow ups on font-weight and attire, and classic autocomplete vs AI autocomplete.
WP Builds: 412 – Exploring AI in WordPress with Matt Medeiros
In this episode of the WP Builds podcast, Nathan Wrigley and guest Matt Medeiros discuss the role and impact of AI in web development, particularly within WordPress.
Laravel Podcast: Laravel’s New Starter Kits: Official and Community
They explore the future of Laravel’s starter kits, the impact of community contributions, and the latest developments in Laravel Cloud.
PHP Architect: The PHP Podcast: 2025.03.06 Explaining Explain
This week on the PHP Podcast, Eric and John talk about Explain Explained, Postgres All The Things, Livewire Remote Code Execution, Lazy Object, and more…
Mostly Technical: 73: Explore vs. Exploit
Ian and Aaron talk about scheduling your day, Aaron's newsletter, setting big goals, and a whole more.
Syntax: Web Vitals Explained
Explains web performance metrics like largest contentful paint and what they measure. Also covers how to optimize scores and tools to analyze vitals.
The Changelog: Everyone is talking about MCP
Vibe coding is the new vibe, AI engineers are all taking about MCP, Tom Usher wants you to kill your algorithmic feeds, Curiositry shares his troubleshooting expertise, Nikola Ðuza thinks we should keep blogging for the LLMs & James Stanier answers the question, should managers still code?
|
API design note: Beware of adding an “Other” enum value
The idea here is that Widgets come in three flavors today, but we might add new flavors in the future, so we add an Other value to cover any future flavors.
Implementing Conditional Fields & Smart Email Routing in Contact Form 7
In this article, I'll explain how I implemented conditional fields and smart email routing in Contact Form 7 to enhance form usability and security.
My own PHP CS Fixer setup: A practical example
I want to share my personal PHP CS Fixer configuration, which ensures clean and consistent code across my private Symfony project.
Stop Using Service + Repository in Laravel. A Better Architecture for Small & Medium Businesses
The Laravel community has long recommended using Service classes and Repository classes to organize source code. However, I’ve noticed that many teams encounter two major problems when implementing this architecture.
Context, not prompts. The missing piece in effective AI-assisted development
After using ChatGPT and Claude daily for the past year as part of my development workflow, I’ve learned one crucial lesson: context is everything. The quality of AI’s help directly depends on how much relevant information I feed it.
Laravel Performance Secrets: How to Make Your App Blazing Fast
Let’s dive into some practical tips and best practices to enhance Laravel’s performance and make it run smoothly.
|
Interesting Projects, Tools and Libraries
sam-it/yii1-json-behavior
Behavior for encoding model attribute(s) to json.
muka/shape-reader
A PHP library to parse ESRI Shape files.
dof-dss/nidirect-site-modules
Drupal modules to provide custom code for NI Direct.
siment/module-http-header-theme-switch
Magento 2 module that enables automatic theme switching based on the X-UA-Device HTTP header. (Or any other header).
steven-fox/laravel-model-validation
Salvation for your model validation.
lav45/sort-list
Sort items list and recursive add prefix to child items.
kjohnson/format-object-list
Formats an associative array into a JS parsable array of objects.
pmvc-plugin/debug_store
A store for debug plugin could integration with view plugin.
owlycode/streaming-bird
A PHP client for the Twitter Streaming APIs inspired from Phirehose.
matthewbaggett/clamp
PHP clamp function to clamp a number between a minimum and a maximum.
|
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?
|
|
|
|