October is upon us, summer is officially over, but we hope you're all doing well. This week's newsletter is full of new releases. We have new updates from Laravel, PHP8.1, Symfony and CakePHP. PHPStorm's early access program for its next version is now open as well. New episodes in our podcast sections are also in. Writing down method migrations is No Compromises' topic, while at Maintainable it's Quantifying the carrying cost with guest, Dave Bryan Copeland. This week also bring the continuation of Developer tea's mini-series on Backlog Psychology and how we get better at doing things. Finally in tutorials we have a step by step guide in mastering Cookies in Laravel, How to use external classes in Livewire, and cleaning up your Laravel controller and implementing DTO. We have all that and more, so we do hope you enjoy this week's newsletter. If you're a student or developer on the move and want the latest PHP news and updates in one place, then subscribe to PHPWeekly.
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].
Do follow us on our social media channels on Twitter and Facebook.
All the best,
Please help us by clicking to our sponsor:
Get Reliable, Fast & Quality Proxies, Without the Tradeoffs
Scrape or crawl any amount of data, without having to worry, settle or break the bank. Buy HTTP, SOCKS & UDP proxies you can set and forget.
Enhancing Models with Meta Attributes: A Dive into Business Logic Beyond the Database
A perfect example of this complexity is when certain fields in your models require additional metadata - a set of attributes that aren't stored directly in the database but are instead derived or computed from existing fields.
Clean controllers in Symfony (II): response handling
Suppose we have the same endpoint as in the previous post. For simplicity, we only show the correct response.
PHP Match Expression - Match vs Switch
The Match expression is essentially the same as the Switch statement and was introduced in PHP 8.
Working with Multi-languages in Laravel Without Packages
Laravel has advantageous features for localization. Let’s leverage this feature to build our app. We will not use any packages and make our own handler for translations, routes, models, and everything.
Standardize Laravel API success and error response
Standardizing success and error response is crucial for an API. Since, API are often consumed by other systems.
Understanding Sync, Attach and Detach in Laravel: Managing Relationships with Eloquent
In this article, we will delve into the differences between these methods and explore when and how to use them effectively.
Web Scraping Specialists Wanted
If you're a skilled Web Scraping Specialist with a knack for creative problem-solving, join our remote team to gather data from e-commerce websites and enhance our data-driven solutions. Embrace challenging projects, overcome blocking technologies, and collaborate with a diverse global team in a flexible, fast-paced environment.
Junior PHP/Python Developer - Remote
We're looking for Full-Stack Developers to join our dynamic remote international team. As a developer, you'll work on a range of projects, including Business Intelligence systems, Legal SaaS, and cutting-edge online projects. You'll be responsible for improving legacy systems, monitoring technical systems, and delivering high-quality solutions. You should be proficient in front-end and back-end development, have strong problem-solving skills, and experience with Python, PHP, Postgres, MongoDB, and Linux servers. If you're a self-motivated team player, apply now.
Technical Support Manager - Remote
Are you interested in programming but don't have the experience yet to be a skilled developer? Join our team as a Technical Support Manager and be part of our SaaS company's success. You'll work closely with our customers to provide timely solutions, troubleshoot technical issues, and contribute to feature development. Using your skills, you'll quickly identify and resolve issues, while also working closely with our team to deliver an exceptional customer experience. You don't need to have programming experience to succeed in this role, but you should have a passion for technology and a desire to learn. You will help us enhance our products and deliver an outstanding customer experience.
Tutorials and Talks
How to run Laravel Pint on save in PhpStorm
Here is your short guide on how to configure PhpStorm to run Laravel Pint on save to format your PHP files. I use this for every project to keep my PHP files clean.
How to use External Classes in Livewire Component Class
I'm an experienced Laravel developer who recently delved into Livewire for a project. In less than a month, I encountered a challenge that many developers face: integrating an external class within a Livewire component.
Laravel 10 How To Delete Data by Ajax Request Tutorial
We'll look at how to set up AJAX-based data deletion in Laravel 10, as well as how to use it in practise with real-world scenarios, throughout this article.
Fix Missing MySQL Extension Error in WordPress
The “Missing MySQL Extension” error typically occurs when your server lacks the necessary PHP extension to connect to the MySQL database.
Let’s Clean Up Your Laravel Controller and Implement DTO
Have you ever wondered why, when you write a controller in Laravel, it can sometimes be bloated with so many logical operations?
How to get a variable to a PHP file from another PHP file?
There are three main ways to get a variable from one PHP file to another.
Mastering Cookies in Laravel: A Step-by-Step Guide
How to use Multithreading in php
In this article, you’ll learn how to implement multithreading in PHP, step by step.
News and Announcements
PHP 8.1.24 Released!
The PHP development team announces the immediate availability of PHP 8.1.24. This is a bug fix release.
Laravel 10.25 Released
This week, the Laravel team released v10.25 with exception throttling, a Str::take() method, and more. Laravel saw plenty of fixes, updates, and typo fixes this week, which is always appreciated from the community!
Symfony 6.3.5 released
Symfony 6.3.5 has just been released. Here is the list of the most important changes since 6.3.4
CakePHP 5.0.1 RELEASED
Changes include: Fixed Cake\Http\Client cookie parsing with invalid values that lack both a value and = delimiter. Collection\SortIterator is now compatible with Chronos types.
The PhpStorm 2023.3 Early Access Program Is Now Open
Today, we’re opening the Early Access Program (EAP) for the next version of PhpStorm!
A Week of Symfony #874 (25 September - 1 October 2023)
This week, Symfony 5.4.29 and 6.3.5 maintenance versions were released. Meanwhile, development activity focused on tweaking and polishing some of the features included in the upcoming Symfony 6.4 and 7.0 versions. Lastly, the SymfonyLive Berlin 2023 conference will take place next week.
Podcasts and Vlogs
PHP Ugly: 354: £ Cake
This week on the podcast, Eric, John, and Thomas talk about CakePHP, Hacktoberfrest, PHPRoundtable, php[tek], and more...
The Stack Overflow: USB-C for all, PHP 4EVA, and what do LLMs actually know (if anything)?
Ben and Ryan settle in for a wide-ranging discussion about whether large language models know anything, whether language ability is unique to humans, and what the end of the Hollywood writers’ strike says about the future of AI-generated content.
No Compromises Podcast: Some reasons to write a down method in your migrations
This is a surprisingly controversial topic. In this episode, we share why we write down migration methods, and it's probably not the reason you're thinking of.
North Meets South Podcast: DIY woodwork, React micro-frontends, and confusing OpenJSONAPISchema
In this episode, Jake and Michael discuss building your own monitor stand, the mysterious world of React micro-frontends, and get confused about JSON API, Open API, Swagger, and JSON Schema.
Maintainable Podcast: Dave Bryant Copeland - Quantifying the Carrying Cost
Dave is a Senior Software Engineer and speaker. Reflecting on his experience, Dave believes that well-maintained software is software that people understand what it does, how it works, and that it can be changed.
Software Engineering Radio: SE Radio 583: Lukas Fittl on Postgres Performance
SE Radio host Philip Winston speaks with Fittl about database indexing, queries, maintenance, scaling, and stored procedures.
Developer Tea: Backlog Psychology - Practice Requires Rhythmic Predictability
In this episode we continue a little mini-series called "Backlog psychology." How do you get better at anything? (Hopefully you said "practice" almost instinctively.) What does good practice look like?
Shoptalk Show: 585: Blog Redesign, Sounds on a Website, Accessibility Tests, and Safari 17
Chris redesigned his blog, using sounds on your website to make it seem fancy, what can't automated accessibility tests test, and what's new in Safari 17.
WP Builds: 343 – Is browser interoperability a threat to page building?
This is the 16th episode of our “Thinking the Unthinkable” series and I think we have come up with our catchiest title ever… “Is browser interoperability a threat to page building?” – truly inspirational!
WP Briefing: Episode 63: A WordPress 6.4 Sneak Peek
Join WordPress Executive Director, Josepha Haden Chomphosy, as she offers an exclusive preview of the upcoming WordPress 6.4 release, accompanied by special guest Sarah Norris, one of the Editor Tech leads for this release. Don’t miss this opportunity for an insider’s look!
20 practical productivity tips that you can start doing today as a developer (no Pomodoro)
In this article, I’ve curated practical and straightforward tips for enhancing your productivity as a developer (some are applicable to non-developers too), which I use daily.
An Introduction to CodefyPHP: A Domain-Driven Framework
A PHP Domain-Driven Framework for building complex applications with CQRS and Event Sourcing.
From Tasks to Time Travel: Memento Pattern in Laravel Explained
The Memento Design Pattern is a behavioral pattern used in software development to capture an object’s internal state and save it externally so that the object can be restored to its previous state when needed.
Laravel middleware in depth
Laravel middleware is a fundamental concept in the Laravel PHP framework that allows you to filter and process HTTP requests entering your application.
PHP: $this vs parent vs self vs static
The PHP keywords $this, parent, self, and static are all used to access class members, but they have different meanings and use cases.
15 things (you didn’t know) you can do with GraphQL in WordPress
I was invited to present Gato GraphQL on WordCamp Malaysia 2023 last September, and the video of the talk is now live.
Interesting Projects, Tools and Libraries
Use Laravel Blade in any PHP project.
Common classes for drivers extending ThePhpLeague Omnipay multi-payment processing library.
A simple PHP class for making HTTP requests using cURL.
Appwrite PHP library for generating API SDKs for multiple programming languages and platforms.
JoliCode AutoMapper Symfony Bundle.
Typed Object, a simplified version of signpostmarv/daft-object.
License Type Detector.
Laravel package for Lightspeed Retail API.
A lightweight PHP MVC framework for simple websites.
A collection of utilities for working with IPv4/IPv6 addresses.
Please help us by clicking to our sponsor:
Protect your PHP Code
Why not try SourceGuardian 14. 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?