Sorry, you need to enable JavaScript to visit this website.
Skip to main content

Symfony Station Communiqué - 15 April 2022

A white paragraph.

 


 

Symfony Station Logo

symfony logo

 

 


 

Welcome to this week's Symfony Station Communiqué. It's your weekly review of the most essential news in the Symfony and PHP development communities.

Again, we cover the tech aspects of the war crimes going on in Ukraine and how you can help.

Take your time and enjoy the items most valuable to you.

Thanks to Javier Eguiluz and Symfony for sharing our last communiqué in their Week of Symfony.

Please note that links will open in a new browser window. My opinions will be in bold.

Symfony

As always, we will start with the official news from Symfony.

Highlight -> “This week, Symfony celebrated the SymfonyLive Paris 2022 conference, one of the first official non-virtual Symfony conferences since the COVID-19 pandemic started. The next opportunity to meet the community in person will be the SymfonyCon Disneyland Paris 2022 conference on November 17-18, 2022. Meanwhile, we started publishing the New in Symfony 6.1 blog posts in preparation for its upcoming release.”

A Week of Symfony #797 (4-10 April 2022)

Javier Eguiluz previews upcoming features of the 6.1 update.

New in Symfony 6.1: Improved ExpressionLanguage Syntax

New in Symfony 6.1: Locale Switcher

This is self-explanatory.

Symfony 6.1.0-BETA1 released

They also announced:

First selected speakers announced at SymfonyWorld Online 2022 Summer Edition

SymfonyCasts continues their free look at Symfony 6 and Easy Admin paid courses.

This week on SymfonyCasts

Platform. sh announced:

Platform.sh Renews Partnership with Adobe to Power the Future of Commerce

Featured Item

https://symfonystation.com/sites/default/files/inline-images/Featured-Item_1_0.png

Our featured article this week proves we aren’t always serious. But we are usually mad.

Please reply with a link to this article every time you see a “PHP is dying” post from some idiot.

PHP Is Not “Dying” You Clickbait Wankers!

This Week

We have a new article here at Symfony Station. Check out:

Exploring the 7 PHP Frameworks using Symfony Components

JoliCode has a review of SymfonyLive Paris 2022.

SymfonyLive Paris 2022 – En chair et en os

Demianchuk Sergii writes, “welcome to the 3rd article devoted to the theme: “How to work with ElasticSearch using Symfony PHP framework”. Previous article (Part 2: Symfony ElasticSearch and docker environment) is located here. Here we will start to investigate the Symfony skeleton project. But at first it would be great to refresh in our mind the architecture scheme from the Part 1: Symfony ElasticSearch.

Symfony ElasticSearch, Front Controller, API documentation

Eelco Verbrugge is back to review.

Symfony Unit Testing

Prestashop features a key member of their team in this article.

Merchant, freelance developer, and top contributor: Daniel Hlaváček’s experience with the PrestaShop project

Zoya Scoot has this Magento writeup.

Magento Open Source 2.4.4: Release Notes (Everything You Need to Know)

Kévin Dunglas says, “At SymfonyLive Paris, I introduced a new PHP library to build Solid applications: Solid Client PHP. In this presentation, I review the Solid protocol and how it could give back the control of personal data to end-users.”

Building Decentralized Web Apps with Solid and PHP

Matt Glaman advises:

Avoid using loadByProperties to load Drupal entities

Altudo opines, “The competitive advantage that Drupal has over other Content Management Systems is being an open-source CMS. It is economical to implement, easy to maintain and secure to use. It is a platform that excels in delivering the right content to the right people at the right time.”

Drupal - The Best Open Source CMS With Significant Features

J Rockowitz writes, “Every few years, organizations have to rework their digital strategy starting with establishing a web presence, adopting a CMS, sharing content, building a responsive mobile website, creating personalized user experiences, and authoring voice-friendly content. This list won’t stop there. Headless CMSs are not a trend - they are a major shift in how organizations create and manage their content to make it easier to future-proof an organization's digital strategy for their next digital challenge.”

The future of our Drupal CMS and Schema.org: APIs, UI, and UX

PHP logo

PHP

This week

Wooter Carabain helps us write clean code.

Clean code in PHP: 5 tips to help you!

Security Lit Limited notes, “In this blog article we shall be covering vulnerabilities that you could experience while dealing with PHP applications. Some vulnerabilities are particular to PHP, whereas the others are universal.”

Vulnerabilities in PHP Based Applications

Kpicaza writes, “As promised in our previous post about Async PHP, we already have the project running in production for some sections of our applications. The search middleware has good enough performance using Symfony MicroKernel + Road Runner as a server.

This time, we want to explain how to manage a strict development continuous integration pipeline in PHP. That means respecting the best practices and standards of the PHP language.”

Strict Development CI for PHP

Grant Horwood notes, “there's not a tremendous amount of documentation on writing command line scripts in PHP, and if you're looking to build an interactive script that leverages your existing code, the process can be frustrating. This series of posts is designed to cover the basic constructs we will need to write effective interactive scripts in PHP.”

Writing command line scripts in PHP: part 3; interactive input

Doeke Norg says, “Sometimes it can be useful to use a callback function or other callable to prevent a bunch of code duplication.

Let's say you have an event subscriber that encrypts and decrypts data in the life cycle of an entity. When the entity is stored, some data will be encrypted; and when the entity is loaded, the data will be decrypted.”

Quick tip: Using callbacks to prevent code duplication

genie-oh writes, “in this article, we use Closure (same to Anonymous Function) to reduce the overhead of debug logging with contextual data. Anonymous Function is useful in various cases and languages.”

[PHP] try to reduce overhead of debug logging using Closure(same to anonymous function)

Jordi Bassaganas says:

PHP Became Strongly-Typed

Lucas Pereyra has:

A quick performance optimization example using PHP generators

He also notes, “A couple of days ago, ... I started to struggle with a docker compose build problem when attempting to install my PHP dependencies using Composer, inside of the Dockerfile’s container building steps (these are the steps executed when you run a dockercompose build).

I decided to share with you this issue and a couple of workarounds you can apply when facing it, with a simple yet practical example.”

Docker Compose, PHP & Composer: the missing “vendors” folder issue

Lena Charles shows us how to:

How to Hire the Best PHP Developers

And Antonello Zanini show us how to build a PHP script to validate and verify emails.

Email Syntax Validation and Existence Verification in PHP

Laravel News shares the details on a newly free PHP book.

BaseCode: A Field Guide to Writing More Readable Code

A new version of the PhpStorm IDE is out.

What’s New in PhpStorm 2022.1

Last Month

PHP Sandbox reached their 10,000th user.

10k users: The Journey

Timeless

Shawn McCool says, “When we create a class, we give it a name. What does this name represent?

Classes are boundaries. On the outside is the rest of the entire world. On the inside is some combination of data and behavior.

What goes inside a class and what stays outside? In order to determine what is contained within a class, we reference its design paradigm.”

Adding Real Capabilities To Systems Through Naming

PHP Delusions writes, “During a decade of active participation on Stack Overflow I was able to determine a set of reasons that lead to the most frequent questions on Q&A sites. It turned out that most questions are caused by not following a rather limited set of basic principles.

These principles, although being universal, are almost as universally ignored or even violated in virtually every PHP tutorial out there. And I would say it's one of the biggest problems of PHP community.”

The most important basic principles of web programming

Code logo

Other

Please visit our Support Ukraine page to learn how you can help kick Russia out of Ukraine (eventually).

The Atlantic opines, “Americans need to cure what ails our democracy, ridding ourselves of our incipient Russification. ... I worry that we’ll soon forget about Ukraine. It’s far away, and Americans have famously short attention spans.”

I Worry We’ll Soon Forget About Ukraine

We sure as fuck won’t forget Ukraine.

The cyber response to Russia’s War Crimes

Wired reports:

How Russia's Invasion Triggered a US Crackdown on Its Hackers

They also have:

Russia Is Leaking Data Like a Sieve

TechCrunch reports:

Microsoft seizes domains used by Russian spies to target Ukraine

Bleeping Computer writes, “A hacking group used the Conti's leaked ransomware source code to create their own ransomware to use in cyberattacks against Russian organizations.

While it is common to hear of ransomware attacks targeting companies and encrypting data, we rarely hear about Russian organizations getting attacked similarly.

Hackers use Conti's leaked ransomware to attack Russian companies

The Evil Empire Strikes Back

MIT Technology Review reports:

Russian hackers tried to bring down Ukraine’s power grid to help the invasion

TechCrunch also reports that “U.S. government agencies are warning that state-backed hackers have developed custom malware that enables them to compromise and hijack commonly used industrial control system (ICS) devices.”

US warns of state-backed malware designed to hijack critical infrastructure systems

Cybersecurity

TechCrunch also says:

The US needs a tech doctrine

This should apply to any democracy.

ZD Net reports that “Microsoft takes control of ZLoader's botnet infrastructure, which is used to spread malware and ransomware.”

Microsoft: We've just disrupted this ransomware-spreading botnet

More

Did you know if you’re a paid member of Medium you have access to these resources?

Directory of Books from The Pragmatic Programmers on Medium

PragPub on Medium

Khalil Stemmler asks:

Is DDD Overrated?

Laravel News reports on a:

Style Guide Generator for Tailwind CSS

ZDNet also writes:

Sorry, developers: Microsoft's new tool fixes the bugs in software code written by AI

And to the applause of JS Geeks everywhere,

Microsoft launches TypeScript 4.7 Beta

Kinsta asks and answers:

What Is PostgreSQL?

Joshua Otwell has this helpful article.

Multi-level Aggregation Using MySQL GROUP BY WITH ROLLUP

That's it for this week. Thanks for making it to the end of another edition. I look forward to sharing next week's Symfony and PHP news with you on Friday.

Please share this post. :) Also, be sure to join our newsletter list at the bottom of our site’s pages. Joining gets you each week's communiqué in your inbox (a day early). And follow us on Twitter at @symfonfystation.

Do you own or work for an organization that would be interested in our promotion opportunities? If so, please contact us. We’re in our infancy so it’s extra economical. ;)

More importantly, if you are a Ukrainian company with coding-related products, we can provide you with free promotion on our Support Ukraine page. Or if you know of one, get in touch.

Keep going Symfonistas!

 

Visit our Communiqué Library

You can find a vast array of curated evergreen content.

 

Author

Reuben Walker photo

 

Reuben Walker

Founder
Symfony Station

 

 

 


 

Symfony Station Communiqué - 18 March 2022

A white paragraph.

 


 

Symfony Station Logo

symfony logo

 

 


 

Welcome to this week's Symfony Station Communiqué. It's your weekly review of the most essential news in the Symfony and PHP development communities.

This week, we again cover tech aspects of the war crimes going on in Ukraine and how you can help.

Take your time and enjoy the items most valuable for you.

Thanks to Javier Eguiluz and Symfony for sharing our last communiqué in their Week of Symfony.

Please note that links will open in a new browser window. My opinions will be in bold.

 

Symfony

 

As always, we will start with the official news from Symfony.

Highlight -> “This week, Symfony development focused on fixing bugs and finishing new features for the upcoming Symfony 6.1 version. One of those new features is a button to copy requests as cURL commands in the Symfony Profiler. Meanwhile, the SymfonyLive Paris 2022 conference, which will take place in just 4 weeks, announced its complete workshop and talk schedule.

A Week of Symfony #793 (7-13 March 2022) (Symfony Blog)

 

Early bird registration for SymfonyCon Disneyland Paris 2022 ends on March 31st

 

Unsurprisingly after the recent merger they announced:

Symfony in the Cloud: Platform.sh becomes the official Symfony PaaS

 

Fabien Potencier asks “How can you get started with Symfony 6? What are the best resources to learn Symfony? How can I learn about the latest best practices? Those are legitimate questions I get from the community.”

Get started with Symfony 6

 

SymfonyCast has started a new course on Symfony 6!

This week on SymfonyCasts

 

Elise Hamimi reports “As the creator of Symfony, SensioLabs strengthens its relationship with its long-time partner in the US: Unleashed Technologies. This strategic partnership is the result of successful joint projects with Unleashed Technologies. In 2022, SensioLabs and Unleashed Technologies are speeding up to better serve American users of Symfony.

SensioLabs strengthens its partnership with Unleashed Technologies

She also has:

Learn how to migrate to the PHP framework Symfony

 

Featured Item

 

Featured Item Graphic

 

Forbes writes Ukraine’s IT pros are “ fixing internet in bombed-out buildings, finding rogue operators providing Russians with mobile connections and thwarting hackers. The telecom companies of Ukraine and their employees are being hailed as heroes in the war.”

Bombs And Hackers Are Battering Ukraine’s Internet Providers. ‘Hidden Heroes’ Risk Their Lives To Keep Their Country Online

 

If these heroes can do this, we can do more ourselves to stand with Ukraine and protect democratic values.

 

This Week

 

Sergii Demianchuk writes “welcome to the second article devoted to the theme:  “How to work with ElasticSearch using Symfony PHP framework”. Here we will prepare our local environment for further development. As you remember from Part 1 we have to create a web server, microservice application, and Elasticsearch as standalone docker containers.”

Symfony, Elasticsearch, and Docker environment

 

Michał Romańczuk notes “There are many tools for static PHP code analysis, but one of the most popular is PHPStan. It may be due to its ease of use, versatility and the possibility of using many extensions for example to Symfony, Doctrine, Elasticsearch, Monolog, Guzzle, etc.”

Using PHPStan with Symfony - static analysis for better PHP code quality

 

Fabien Lemoine show us “How to combine the power of the Symfony Mailer component with the features offered by an email provider.”

Envoyer des e-mails transactionnels avec un service tiers sous Symfony

 

Mchojrin takes a look at how to handle exceptions in Rest APIs with Symfony. It’s in Spanish.

Cómo manejar las excepciones en API Rest con Symfony

 

Webkul writes “PrestaShop employs various types of cache such as Smarty, assets (CSS/JS), XML cache, etc. It also provides ways to clear individual cache types from our module. So in this blog, we will discuss how we can clear PrestaShop cache in module code.”

Clear PrestaShop Cache in module

They also have:

Custom Events and Event Subscribers in Symfony

 

Sylius notes “Since the very beginning of Sylius’ existence, our philosophy was to focus on our domain and not reinvent the wheel. That’s why Sylius is entirely based on Symfony which gave us a solid foundation to build specific e-commerce bundles within the already existing and highly standardized framework.

Following the very same core idea, Sylius never intended to solve problems of other domains. There are wonderful tools in different categories, which allows us to focus on what we know best – the e-commerce domain.”

Why best-of-breed is the best thing that can happen to your mid-market e-commerce?

I agree that unless you have a small and simple application, best-of-breed is the way to go for your stack.

 

Joseph Ndedde Udonsak writes “Recently, I was working on a feature and needed to generate and mail a PDF document whenever a payment was made. I dispatched a Message and in the message handler, I used the KNP Snappy Bundle to generate a PDF from a twig template. It was pretty straightforward (or so I thought) until I saw the mayhem that had been let loose in my failed transport.

Today I Learned — Twig and Services

He also has:

How to inject multiple instances of an interface in a service

 

The Drop Times has an interview with Drupal’s founder with some interesting takes on headless and low code.

Dries Buytaert: Low Code No Code Adoption Good for Drupal

 

And speaking of headless Drupal here’s an article and a solution taking a look.

Five basic things I’ve learned using GraphQL in Drupal

 

The future of Drupal is headless

Dries disagrees with the headless opinion and so do I. That applies to WordPress as well.

 

Ryan Szrama writes “We've long recommended Swift Mailer for formatting and sending HTML emails from Drupal Commerce. Symfony announced the project's deprecation late last year, recommending folks switch to using the 3-year-old Symfony Mailer instead after they brought it up to full feature parity with the Swift Mailer library.

Fortunately, there's a module for that!”

Replace Swift Mailer with Symfony Mailer for HTML email

 

Timeless

Inspector Logo

Sponsored Article

 

We published our third sponsored article on Symfony Station exploring how to Implement Code Execution Monitoring for your Symfony apps via Inspector. Like all our articles it is now available via audio.

 

How to Implement Code Execution Monitoring for your Symfony apps via Inspector

 

All sponsored articles are for products we have vetted and stand behind. We either use them or would do so if they applied to the Symfony Station site.

PHP logo

PHP

 

This week

 

Dariusz Gafka writes “We often need to schedule the execution of given business functionality in our applications. The timing depends on what we want to achieve. It may be monthly executed invoices or notifications sent after the user was registered on the website. And in this article, we will deep into different ways of scheduling execution in PHP.”

Scheduling Execution in PHP

 

PHPStan asks:

What's Up With @template-covariant?

They also look at:

Generics By Examples

 

Digital Ocean shows us:

How To Use Functions in PHP

 

Gaurav Makhecha says, “Thanks to the PSR-4 autoloading, we can define the namespaces prefix and their corresponding base directories.”

PHP Namespaces are not the same as the Directory Structure

 

Marcin Szydlowski writes “I have recently spotted an interesting vulnerability in a PHP application, which was in the scope of a private bug bounty program. This vulnerability has nothing to do with standard web app issues like SQLi, XSS, or IDOR, hence despite relatively small impact I decided to write about it.”

Insecure comparison in PHP — Business Logic Bypass vulnerability

 

Brent Roose & Freek Van der Herte are starting a series of posts with tips for writing clean PHP. They’re from a course the duo offers.

Code that breathes

 

Joshua Otwell says, “I'm sharing my 5 favorite Programming/Developer newsletters that I think you should read too.”

5 Developer/Programming Newsletters You Should Be Reading

There are good SQL and PHP choices on the list.

 

Meet Simseck states “I’d like to talk about Swoole in this article but it won’t be covering the cumbersome processes such as installing, configuring, using, and so on. I’d like to cover the philosophy behind it. Why do we need it in the PHP world? Which scenarios are the best to use this kind of external package/extension?”

Let’s Tackle PHP Swoole Solemnly

Code Logo

Other

 

Please visit our Support Ukraine page to learn how you can help kick Russia out of Ukraine (eventually).

 

The cyber response to Russia’s War Crimes

 

MarketWatch writes “One reason that some military analysts and Russia experts believe may have contributed to Putin miscalculating his chances of a quick victory, or his ability to outlast the Ukrainians, is that he underestimated the efficacy of Western sanctions in sapping Russia’s power to wage war, specifically by denying it access to critical technologies.”

Putin tried to create a homegrown tech industry. His failure could be key to a Russian defeat, experts say

 

The Hill notes “With the assistance of the West, Ukraine has become more resilient since the initial cyberattacks, especially given that it is uniquely vulnerable to Russian attacks since most of its infrastructure was built by Moscow during the Soviet era.”

US and EU cyber investments in Ukraine pay off amid war

 

Reface, a synthetic media app that’s developed out of Ukraine has added push notifications informing its ~200 million-strong global user-base about Russia’s invasion of the country — urging people to #StandWithUkraine, including by watermarking face-swapped videos created with the app.

Reface, a viral face-swap app from Ukraine adds anti-war push notifications

 

Wired writes, “Within three days of the first missiles falling on Kyiv, Mykhailo Fedorov and his staff launched a public campaign to pressure US tech giants to cut off Russia, began accepting cryptocurrency donations to support Ukraine’s military, secured access to Elon Musk’s Starlink satellite internet service, and began recruiting a volunteer “IT Army” to hack Russian targets. More recent projects include a chatbot for citizens to submit images or videos of Russian troop movements.”

Ukraine’s Digital Ministry Is a Formidable War Machine

 

The Guardian reports “about 300,000 people have signed up to a group on the chat app Telegram called “IT Army of Ukraine”, through which participants are assigned tasks designed to take the fight to Vladimir Putin. In so doing, they are trying to level the playing field between one of the world’s (so-called) superpowers and Ukraine as it faces bombardment and invasion.

‘It’s the right thing to do’: the 300,000 volunteer hackers coming together to fight Russia

 

Anonymous continue their efforts.

Anonymous releases 364,000 files about Russia's censorship of invasion

 

They also hit the German subsidiary of Russian energy giant Rosneft with a cyberattackRosneft withal Office for Information Security (BSI) says.

Hackers target German branch of Russian oil giant Rosneft

 

Fast Company reports on how “A group of techies-turned-hackers called the Cyber Partisans are targeting railways carrying Russian troops and exposing a brutal Belarusian regime.”

How hackers in Belarus are complicating Putin’s Ukraine invasion

 

Rest of World asks:

In Ukraine’s cyber-war with Russia, who is a civilian, and what is a war crime?

 

The Wall Street Journal notes “People around the world are using a new website to circumvent the Kremlin’s propaganda machine by sending individual messages about the war in Ukraine to random people in Russia.”

Using a New Cyber Tool, Westerners Have Been Texting Russians About the War in Ukraine

 

The Guardian also notes “Experts say both sides may understand that large-scale cyber-attacks will result in ‘mutually assured destruction of systems’.”

‘Catastrophic’ cyberwar between Ukraine and Russia hasn’t happened (yet), experts say

 

Cybersecurity

 

I thought this would have been a no-brainer but:

Germany warns against using Kaspersky software citing 'considerable' cyber risk after Russia's invasion

 

VentureBeat reports “Cloudflare unveiled a new tool in its suite of security offerings, the Cloudflare API Gateway, which seeks to simplify the protection of increasingly prevalent application programming interfaces (APIs). The solution also aims to feature a significantly lower price point than many of the other API security products now on the market, which could go a long way toward “democratizing” API security for the market.

Cloudflare aims to boost API security with a new gateway

 

On the Public API Network, Postman gathers some of the best APIs to ramp up productivity including Notion (just released to GA!), Peruse Code, and Machine Learning Tools for Developer Professionals.

Build Software Faster with These Productivity APIs

 

This was from a while back but is worth another look. Via Github:

The Open Source Software Security Summit: securing the world’s code together

 

C.S. Rhymes says, “GitHub offers a dependabot service that can let you know of any potential security issues with your dependencies and automatically create a Pull Request for you. This works great without any configuration if you have a repo that contains npm, composer, or gem dependencies, but you may need additional configuration if your lock files aren’t in the root directory, or in separate directories in the case of a monorepo.”

Using GitHub Dependabot with a Monorepo

 

GitHub also has a video exploring “ some of the shortcomings of legacy application security solutions, and share a developer-first approach that can help your organization overcome challenges with an end-to-end security process and improved collaboration.”

Developer-first security: The next step for AppSec

 

If you are having trouble getting cybersecurity buy-in with your CEO or CFO, share this with them. Plus, it’s a good review for anyone.

Cybersecurity: What Every CEO and CFO Should Know

 

More

 

Core DNA writes “We take a close look at the evolution of the CMS platform, specifically, how the management of content has changed and how platforms have been designed to cater for the changing browsers, new channels, and client needs.”

Custom CMS & Backend Frameworks Be Damned

 

Postman asks us to “Explore the World of APIs. Browse the largest network of APIs, workspaces, and collections by developers across the planet.”

Postman API Network

 

Ben Gurney shares an effective way to approach improving the web accessibility of your apps.

My secret to better web accessibility

 

Chris Saxon notes “We all know that many modern apps rely on REST APIs to talk to other services, especially in the cloud. We all know those APIs usually send and receive data using a recent innovation: JavaScript Object Notation (JSON) documents. And we know there are a lot of methods for storing, managing and sharing these documents in your applications.

What many people don’t know is that the best way to manage JSON is with a seemingly ancient tool: the SQL language. Let’s look at why that is and five examples of how to do it.”

Why (and How) You Should Manage JSON with SQL

 

That's it for this week. Thanks for making it to the end of another extended edition. I look forward to sharing next week's Symfony and PHP news with you on Friday.

 

Please share this post. :) Be sure to join our newsletter list at the bottom of our site’s pages. Joining gets you each week's communiqué in your inbox (a day early). And follow us on Twitter at @symfonfystation.

 

Do you own or work for an organization that would be interested in our promotion opportunities? If so, please contact us. We’re in our infancy so it’s extra economical. ;)

 

More importantly, if you are a Ukrainian company with coding-related products, we can provide you with free promotion on our Support Ukraine page. Or if you know of one, get in touch.

 

Keep going Symfonistas!

 

 

Visit our Communiqué Library

You can find a vast array of curated evergreen content.

 

Author

Reuben Walker photo

 

Reuben Walker

Founder
Symfony Station

 

 

 


 

Symfony Station Communique - 24 December 2021

A white paragraph.

 


 

Symfony Station Logo

symfony logo

 

 


 

Happy Holidays graphic

 

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.

 

Symfony

 

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

 

Timeless

 

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

PHP

 

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



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

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

 

Timeless

 

Ivo Lukač has a useful article exploring options for headless php website development.

Headless possibilities for PHP

Code logo

Other

 

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!

 

Visit our Communiqué Library

You can find a vast array of curated evergreen content.

 

Author

Reuben Walker photo

 

Reuben Walker

Founder
Symfony Station

 

 

 


 

Subscribe to PlatformSH

 

 

Follow Symfony Station on Mastodon Mastodon Icon Twitter Twitter Icon Flipboard Flipboard Icon or Our Newsletter Newsletter Icon