Welcome to this week's Symfony Station Communique. It's your weekly review of the most valuable and essential news in the Symfony and PHP development communities. Take your time and enjoy the items most valuable for you.
And more importantly, we want to wish you a Happy Holiday Season!
Thanks to Javier Eguiluz and Symfony for sharing our last communique and our article on how Symfony Station was built in their Week of Symfony.
*Please note all links will open in a new browser window. My opinions, if I present any, will be in bold.
As always, we will start with the official news from Symfony.
Highlight -> "This week, Symfony wrapped up its 2021 conferences and announced a new SymfonyWorld Online 2022 conference for June 14-17. In addition, SymfonyCorp, the company behind the Symfony project, announced that it's hiring new developers from anywhere in the world to work on in-house projects."
A Week of Symfony #781 (13-19 December 2021)
The Blackfire PHP SDK now provides a seamless integration to monitor your CLI commands.
Symfony Commands Monitoring
I considered the profile of Matt Mullenweg below for our featured item but decided on the following.
We all know PHP is not dying. However, its popularity is slowly decreasing. Which is not a disaster by the way.
This post is a level-headed look at why PHP isn’t being used for as many purposes as it once was.
Alex Daubois has yet another post for us. This week he explains the Symfony 6 Security Component.
Symfony’s Security Key Concepts in 5 minutes
William Pinaud provides this review of SymfonyWorld Online Winter 2021
A quick REX on SymfonyWorld Online 2021 — Winter Edition
Dariusz Włodarczyk explores breaking your Symfony project into smaller pieces when you have limited local computing resources.
Splitting a Symfony project into chunks
StrangeBuzz shows you how to organize your Symfony project tests. Check all the available test types and create consistent and robust test suites.
Organizing your Symfony project tests
Drupal announced that version 9.3 is available.
Drupal 9.3.0 is available
Vishwa Chikate covers “alternative approaches which can be introduced to handle API validation in Drupal 8/9 or any PHP-based project, thereby further reducing the need to write needless custom code to validate the HTTP request.”
Drupal 8/9: Writing validation for RESTful API’s the simple way
And Nevin Katz shows us how to set up local development for Drupal with Lando.
How to Set up a Local Drupal Website With Lando
The following post also looks at breaking large projects into smaller pieces. It promotes the Divide and Conquer approach in Spanish.
Divide y vencerás: Parte 1
Prestaconcepts looks at the history of Symfony versions in this post in French.
Symfony : Une genèse majeure
Zlato Spajic writes HautelookAliceBundle is a tool you can use to effortlessly seed test data for your development environment. The bundle utilizes a PHP library called Faker which generates the test data for you.
How to Seed Data with Symfony Hautelook Fixtures
If you ever need to send someone an explanation of what Symfony is, this post's for you.
Symfony framework explained
I have been sharing many posts from Akashic Seer's blog over the past months. These two catch us up.
Working with your app's local image assets in Symfony 5+
How to quickly create a Symfony 5+ controller
We also continue to share the treasure trove of Symfony posts on Twilio’s blog.
Verifying Twilio API Requests in Symfony 5
Implement Two-Factor Authentication with Symfony and Twilio's Authy App and API
Doeke Norg is back with a look at Heaps in PHP. He explores the world of Heaps, the data structure. Because some knowledge of Trees is useful, he suggests you read his Trees and Tree Traversal in PHP article before diving into this one.
Heaps explained in PHP
DeliciousBrains wants you to “imagine a world where your IDE or code editor detected problems before you even ran the code.”
Get Started with PHP Static Code Analysis
Anders Björkland continues his month-long series of PHP Christmas posts with one on MVC.
Have Yourself a Model View Controller
Platform.sh was a gracious sponsor of the recent SymfonyWorld Online. They now support PHP 8.1 on the platform.
PHP 8.1 lays new ground on Platform.sh
Italo Baeza Cabrera notes that “the PSR-3 implementation describes eight log levels. You read that right. In order of “severity”: Emergency, Alert, Critical, Error, Warning, Notice, Info and Debug.”
PHP: Making Sense of the 8 Log Levels
Smaine Milianni provides a reminder piece on PHP constants.
Use PHP Class constants
Nicholas Valverde writes “Working in Docker feels like you are working in virtual machines, so it can be a bit confusing at first glance, because you don’t have anything installed on your local machine except Docker itself.
Luckily, PhpStorm has us covered; it provides a tight integration with Docker!”
And speaking of PhP Storm:
PhpStorm 2021.2.4 is released
Michał Romańczuk posted a review of SOLID PHP principles. It's always a good time to keep these in mind.
SOLID principles in PHP
Ivo Lukač has a useful article exploring options for headless php website development.
The Log4Shell fallout continues, and we can all learn things from the fiasco (especially about backward compatibility). Venture Beat takes a look back at Heartbleed and compares it to Log4.
What Log4Shell teaches us about opensource security
Gizmodo looks at the frantic efforts to patch for the vulnerabilities.
Log4j Vulnerabilities Are Piling Up as Companies Scramble to Patch
Enough of the negative. Now for the positive. The following article looks at how Matt Mullenweg, Automattic, and WordPress are building a more open internet. Can he play the hero to big tech villains?
Can Matt Mullenweg save the internet?
Joshua Otwell writes: “I sometimes forget there is a difference in counting the number of rows in a MySQL table versus counting the number of column values for those rows. Because, as you will see, there is a difference.”
MySQL COUNT(*) and COUNT(column or expression) — Differences
For those of you using Tailwind CSS here is a handy font size reference.
Tailwind Size Reference. Lines with a blue background are official Tailwind sizes.
Have you published or seen something related to Symfony or PHP that we missed? If so, just contact us.
That's it for this week. I look forward to sharing next week's Symfony and PHP news with you on Friday. Please follow us on Twitter at @symfonfystation. And sign up for our newsletter below. You will get our communiques a day early on Thursdays!