Hi everyone,
We're halfway through the year and this week we have an article with a recap on Laravel's most memorable moments. In the article section we also have a deep dive on Laravel Context, Dependency injection in PHP and a comprehensive guide on Wordpress Development. In Podcasts this week we have new episodes from Laravel News on Eloquent Builders, manipulating images and more, while the guys at No compromises explains why every project should start in the client's own GitHub organisation. Finally in our Reading section we have articles on Understanding the Liskov substitution, distributing PHP without source code, and Query and index optimisations.
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
Laravel in the First Half of 2025
July 2nd was the midpoint of 2025, and I thought it would be nice to recap some of the most memorable moments so far at Laravel News. The following are a mix of some of our most popular posts, community milestones, products, and events.
PHP 8.5: New array functions. array_first() and array_last()
In PHP 7.3, we got array_key_first() and array_key_last() to get the first and last keys from an array. What we don't have yet is a way to get the first and last values of an array.
Exploring WordPress Development – A Comprehensive Guide
This article provides an overview of WordPress development, delving into its general aspects and focusing on theme and plugin development, key areas that drive its customization and functionality, along with valuable resources for learning.
Laravel Context: A Deep Dive into Enhanced Logging and Job Tracing
If you're a Laravel developer, you know that the framework is constantly evolving to make our lives easier. One of the newer features that's been a real game-changer is Laravel Context.
Laravel 12: What’s New From 12.0 to 12.19
Laravel has long been one of the most beloved PHP frameworks thanks to its expressive syntax, full-stack ecosystem, and focus on developer experience.
Learning Dependency Injection in PHP Was a Game Changer. Here's Why
Back in around 2013, I was neck-deep in a project where we had to upgrade a legacy PHP application built on Zend Framework. It was a mix of old-school PHP, some custom abstractions, and a whole lot of things just glued together to work.
|
Tutorials and Talks
Content Negotiation with Laravel's prefers Method
Laravel's prefers method simplifies content type negotiation by determining which format clients want from your available options. This enables flexible endpoints that serve multiple content types seamlessly.
Simplifying Stream Handling with Laravel's resource Method
Laravel's HTTP Client now includes a resource() method that streamlines working with response streams, eliminating the verbose setup previously required for stream operations.
Dependency Injection in Laravel Closure Commands
Laravel's closure-based Artisan commands support full dependency injection, allowing you to inject services directly into command parameters alongside traditional arguments and options.
How to Switch Between Installed PHP Versions on Linux
On a Linux system, it's possible to have multiple PHP versions installed. To see the list of installed PHP versions, use the sudo update-alternatives --list php command.
How to build an Agent with Laravel
A few weeks ago Thorsten Ball (ampcode.com) wrote an article “How to Build an Agent”. The article went viral, and I though it would be great to convert it to Laravel and add my own spice to it.
Keep public FilamentPHP notifications visible until user closes
In a previous tutorial about Managing public alerts with Filament Notifications in Laravel, I explained how to display public alerts using Filament notifications in Laravel, via middleware.
How to Stream Large File Uploads to AWS S3 in Laravel
Handling multi‑gigabyte uploads in a stateless app is painful: TCP throughput caps slow single‑request uploads, server disks fill, and Lambda containers vanish between requests.
Just 5 Minutes! Set Up Automatic Database Backup in Laravel Without the Hassle
Ever experienced that heart-stopping moment when your Laravel app loses important data? Maybe it’s a server crash, a messed-up deployment, or just a simple human error. Scary, right? |
News and Announcements
Native array_first() and array_last() Functions in PHP 8.5
PHP 8.5—which will be released in November 2025—will include array_first() and array_last() functions.
JetBrains PHPverse 2025: Videos are now live!
Last month, developers from across the PHP ecosystem gathered at the JetBrains office in Amsterdam to celebrate three decades of PHP at an event called JetBrains PHPverse.
PHP 8.5.0 Alpha 1 available for testing
The PHP team is pleased to announce the first testing release of PHP 8.5.0, Alpha 1. This starts the PHP 8.5 release cycle, the rough outline of which is specified in the PHP Wiki.
PHP 8.1.33, PHP 8.2.29 & PHP 8.4.10 Released
The PHP development team announces the immediate availability of PHP 8.1.33, PHP 8.2.29 & PHP 8.4.10. This is a security release. All PHP users are encouraged to upgrade to this version.
June 30 – July 6, 2025: A Week of Symfony #966
This week, development on the upcoming Symfony 8.0 version continued with the removal of deprecated features and the marking of several classes as final. In addition, we published two new case studies showcasing companies that use Symfony.
Laravel: 5 Little-Known Ways to Use find() and first() Efficiently
If you’re a Laravel developer, chances are you’re already familiar with the classic way of retrieving data using Eloquent.
|
Podcasts and Vlogs
Laravel News Podcast: Eloquent builders, manipulating images, and translating apps
Jake and Michael discuss all the latest Laravel releases, tutorials, and happenings in the community.
The Stack Overflow: Why call one API when you can use GraphQL to call them all?
Ryan welcomes Matt DeBergalis, CTO at Apollo GraphQL, to discuss the evolution and future of API orchestration, the benefits of GraphQL in managing API complexity, its seamless integration with AI and modern development stacks, and how it enhances developer experience through better tooling and infrastructure.
No Compromises Podcast: Never take hostages: give clients control from day one
Joel and Aaron explain why every project should start in the client’s own GitHub organization—even when the client has never heard of Git.
Developer Tea: Your System is Perfectly Designed for Your Current Outcomes
This episode introduces the potentially controversial principle that your system is perfectly designed for its current outcomes, urging listeners to embrace greater responsibility for systemic issues.
Shoptalk Show: Design Tokens, Web Compents, and Web Monetization
We're all addicted to Clues by Sam and wonder about the data structure for the site, good thoughts on the design tokens community, shadow DOM, the state of web components in mid-2025, dealing with JSON, and new ideas around web monetization.
WP Builds: 427 – Exploring Ally: a new plugin for web accessibility from Elementor
On the podcast today we have Daniela Soibelman from Elementor, but we’re not talking about the Page Builder, we’re talking about a new plugin for website accessibility.
PHP Architect: The PHP Podcast: 2025.07.03
This week on the PHP Podcast, Eric and John discuss BosonPHP, NativePHP, PHP is the new JavaScript, Shocking stories of Electricity, snake_case vs. camelCase, and why snake_case is better, among other topics.
Mostly Technical: 90: So Overpowered
Ian and Aaron talk about what's going on with Outro, building slip & slides, Aaron's Mac Studio wizardry, and so much more.
Syntax: AI Tools You Should Know
Scott and Wes round up the hottest AI tools you should have on your radar; from text-to-speech wizards to self-hosted image generators.
The Changelog: Full-breadth developers for the win
Justin Searls describes the “full-breadth developer” and why they’ll win because AI, Cloudflare comes up with a way publishers can charge crawlers for access, Hugo Bowne-Anderson explains why building AI agents fails so often, the Job Worth Calculator tells you if your job is worth the grind, and Sam Lambert announces PlanetScale for Postgres.
|
Avoiding the Single Point of Failure (SPOF) in Software Design
In software architecture, a Single Point of Failure is any one component that, if it fails, brings down the entire system. Whether it’s a service, server, or piece of code, depending solely on one thing is risky.
Don't expose your database to the world
I'm so excited. I explored NativePHP when I first heard about it for the desktop but I didn't really have a need for it at the time.
Understand the Liskov Substitution Principle in PHP. Don’t break what you extend.
The Liskov Substitution Principle (LSP) is the “L” in SOLID, and it answers a big question. “Can I use a child class wherever the parent is expected — without breaking anything?” Let’s explore what this means, why it matters, and how to apply it in real PHP and Laravel code.
Distribute PHP without source code
Difficulty Level: Advanced (But not that hard though!) You need to understand Docker and Linux.
Is Laravel Slow? Try These Query & Index Optimizations
If your Laravel app starts to feel sluggish — especially when handling more data — don’t blame Laravel just yet.
|
Interesting Projects, Tools and Libraries
mi/rest-extra-bundle
Helper to avoid annotations with FOSRestBundle and SensioFrameworkExtraBundle.
rashid2538/php-htmldiff
A library for comparing two HTML files/snippets and highlighting the differences using simple HTML.
samson/data-grid-bundle
AngularJS based datagrid bundle for Symfony2.
procyonweb/laravel-translation-generator
Translation generator for Laravel, Blade and Vue.
php-extended/php-factory-object
A library that implements the php-extended/php-factory-interface library.
darwinpricing/darwinpricing-client
PHP Client for the dynamic geo-pricing engine Darwin Pricing.
tekill/env-diff
Check the difference between env files and actualize each other.
daniel-furmanov/laravel-formatter
A formatting library that converts data output between XML, CSV, JSON, TXT, YAML and a few others. And supports @attributes in XML.
lionware/symfony-session-timeout
Invalidate Symfony sessions based on inactivity for a certain period of time.
mkusher/padawan
Smart php completion server.
|
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?
|
|
|
|