Need help with Drupal or Grav admin, site building, design, or content? Contact us!   

Back to top with progress scrollbar

Symfony Station Communique - 24 December 2021

By Reuben Walker, 24 December, 2021

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

Featured Item graphic


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.

Why is PHP’s Popularity Decreasing?

This Week

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

Last Week

Prestaconcepts looks at the history of Symfony versions in this post in French.

Symfony : Une genèse majeure

This Month

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

PHP logo


This Week

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 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

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!”

PhPStorm loves 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.

Headless possibilities for PHP

Code logo


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!

section separator
Article Type
Donate using Liberapay

Symfony Station covers the essential news in the Symfony, PHP, and Fediverse development communities with a focus on protecting democracy. Please use the button above to make a small donation to help cover our out-of-pocket costs. Our labor is provided free of charge to support the communities we write about.

Join our newsletter list

Subscribe to The Payload, our weekly newsletter exploring the Symfony Universe.

  Start exploring!

Please share