We have two milestones this week. The first one is WordPress's 20th year and the other is Xdebug's 21st year as a tool used by many in the community, so check out their articles below. We also have an interesting post on an attack on Packagist.org and how the team handled the situation. If you want to look into the details and what you should do, check out their post in the Articles section. While we're on the subject of security in the Tutorials section we have a guide to implement cryptographically-protected passwords with PHP, along with Mastering Laravel authentication to protect your users' sensitive information. For those who missed last week's PHP Roundtable's live stream about Open Sourcing Mental Health, you can click on the podcast link below to tune in. We also have an episode on how to give better feedback on Developer Tea. Finally, in our Reading section we have Validating strings, Handling Input Data and Adapter Design patterns in your PHP applications. 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.
Xdebug at 21
Over these last twenty-one years Xdebug grew from a little hack to make sure PHP wouldn't segfault when having infinite recursion, to a tool that is used by tens of thousands, if not hundreds of thousands, PHP developers.
Packagist.org Maintainer Account Takeover
On May 1st, 2023 between 3:08pm UTC and 4:05pm UTC an attacker accessed four user accounts. The attacker forked each of the packages and replaced the package description in composer.json with their own message but did not otherwise make any malicious changes.
Laravel Worldwide Meetup: Introducing Laravel Splade - Quick Wins in Laravel
Here's the recording of the Laravel Worldwide Meetup which was held last week.
Symfony 5: The ubiquitous of API Platform
In the PHP world, API Platform is a very popular bundle you can quickly set with a Symfony command.
Interfaces in Laravel: Best Practices for Maintainable and Testable Code
In this article, we'll explore how to use interfaces in Laravel to create modular and flexible code, including tips on defining interfaces for services, using dependency injection, and binding services to the application container.
How and When to Use PHP’s Pure Intersection Types
In this publication of my PHP related blog series, I want to address Pure Intersection Types in PHP.
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
Small But Powerful CLI Apps with Minicli
Building CLI applications can be a lot of fun. We don't have to worry about the UI, and we can write beautiful PHP code that doesn't need any build steps.
Understanding PHP Aliases
You might not know that PHP allows creating aliases in various ways.
Creating a Reservation System in Laravel with Lara Reserve: A Step-by-Step Guide
In this tutorial, I will show you how to create a restaurant reservation system using Laravel and the Lara Reserve package.
Symfony/Doctrine Migrations For Multiple Databases
In Symfony/Doctrine, when running the command php bin/console make:migration it generates the migrations for the current driver only, unfortunately it doesn't generate database-agnostic code.
How to make Laravel Pennant Features That Apply Globally
If you use feature flags, Laravel Pennant probably caught your attention in the Laravel 10 announcement. This was the part of upgrading to Laravel 10 that I was looking forward to the most.
Generate Cryptographically-Protected Passwords with PHP
How to implement cryptographically-protected passwords with PHP?
Mastering Laravel Authentication: A Guide for Developers
When building a web application with Laravel, creating a secure authentication system is crucial for protecting your users’ sensitive information.
Lesson 5: Laravel Deferred Service Providers: Improve Performance by Deferring Loading of Services
In this blog post, we will explore what Deferred Service Providers are, how they work, and how to use them to improve your Laravel application’s performance.
News and Announcements
Symfony 6.3.0-BETA2 released
Symfony 6.3.0-BETA2 has just been released. Here is the list of the most important changes since 6.3.0-BETA1.
Laravel Artisan Raycast Extension
Raycast is a fast, totally extendable launcher for Mac. It lets you complete tasks, calculate, share common links, and more. What makes Raycast powerful is its extensions system.
A Week of Symfony #853 (1-7 May 2023)
This week, the first beta of Symfony 6.3 was released so you can test it in your applications before its final release at the end of May 2023. Meanwhile, Symfony UX 2.8 version was published with two new components and massive updates in live components. Finally, we published more information about the workshops of the upcoming SymfonyOnline June 2023 conference.
Laravel Live UK 2023
Laravel Live UK 2023, the official Laravel conference for the UK, is coming to London for a two-day conference on June 22nd and 23rd 2023. Join hundreds of Laravel and PHP enthusiasts for inspirational talks, engaging networking, and amazing learning opportunities.
php[tek] 2023 - Chicago, IL
Join us for the 15th Annual Web Developer Conference, php[tek] 2023, May 16-18 2023.
Podcasts and Vlogs
PHP Ugly: 334: Show Us You Drupals
This week on the podcast, Eric, John, and Thomas talk about php[tek], Bees, Wordpress drops Twitter, Drupal Innovation Contest, and more...
The Stack Overflow: Building Golden Paths For Developers (Ep. 567)
The home team talks with Luca Galante of Humanitec about how platform engineering is more art than science, how self-service platforms empower developers with “golden paths,” and why he’s excited, not anxious, about AI tools (at least for now).
Software Engineering Radio: SE Radio 562: Bastian Gruber on Rust Web Development
Bastian Gruber, author of the book Rust Web Development, speaks with host Philip Winston about creating server-based web applications with Rust.
Developer Tea: How to Give Better Feedback - My Single Biggest Piece of Advice to Increase the Effectiveness of Your Feedback
Good feedback is about finding a problem that you and the person you are sharing feedback with both care about, and working towards a solution.
Shoptalk Show: 564: Render ATL, New Colors Available, Gradients, HDR, and More
Chris previews a bit of his Render ATL 2023 talk, and then we mouth blog some color ideas, thoughts, and shame you for your non-HD websites.
WP Builds: “Thinking the unthinkable (TTUT). Episode 7: Designing in the browser is for amateurs” with Nathan Wrigley and David Waumsley
It’s the 7th in our “Thinking the Unthinkable” series where we attempt to rationalise controversial views on WordPress and web design?
WP Briefing: Episode 55: Happy Anniversary, WordPress!
Join WordPress Executive Director Josepha Haden Chomphosy in the 55th episode of the WordPress Briefing as she looks back at the 20 years of WordPress and how the open source community made WordPress what it is today.
The PHP Roundtable 087: Open Sourcing Mental Health
On this panel we sit down with the team from Open Sourcing Mental Health whose motto is "Stronger Than Fear".
Librarian 4: A Static Site Generator Inspired by Hugo, influenced by DEV, built in PHP
About two years ago I was releasing Librarian to the public for the first time. It was a fun experiment that I created to experiment with markdown files and test DigitalOcean's App platform, where I used to work. It was a fairly simple project, using a simple one-file CSS framework.
The Truth About The Truth About Static And Singletons
As a beginner, you might wonder why there are so many blog posts and threads about the Singleton pattern and why it's considered as a bad practice.
Handling Input Data in PHP
When I started my career as a developer, there was something I always heard from more experienced programmers, something that became a mantra that I always carried with me: Never trust user data.
Getting Started with Event-Driven Architecture in PHP
In recent years, event-driven architecture (EDA) has emerged as a powerful approach to building scalable and responsive systems.
PHP Adapter Design Pattern
There are several reasons why you might want to use the Adapter design pattern in your PHP application.
Strings. How Do I Validate Submitted Data?
Validating strings is an important part of implementing a web page form.
PHPMD: A PHP Code Smells Detector
Detect the messines in your PHP code without pulling you toward the messines itself.
Interesting Projects, Tools and Libraries
PhpStorm meta data for expected arguments completion in Doctrine projects.
Symfony bundle to remove specific data collectors in the profiler.
Module for working with money and currency.
Cookie consent functionality for using websites provided by TYPO3 CMS.
Spitfire is a simple framework for web development.
Implementation of the DGIM algorithm to count ones in a window.
A very fast and lightweight Php Framework for small to enterprise applications.
A PHP merge utility using the Diff php library or the command line git.
Prevent accidental removal of used assets.
Workflow management for WordPress, an extensible event and notification system.
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?