Need help with Drupal or Grav admin, site building, design, or content? Contact us!
Help Defend Democracy! â Join Battalion today.
Exploring the Symfony universe!
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.
Thanks to Javier Eguiluz and Symfony for sharing our last communique in their Week of Symfony.
*Please note that 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 4.4.36, 5.3.13, 5.4.2 and 6.0.2 maintenance versions were released. In addition, Symfony announced the open sourcing of Symfony CLI, and we published the traditional Symfony 2021 Year in Review summary."
A Week of Symfony #783 (27 December 2021 - 2 January 2022)
There's a week left to enjoy the early bird registration for SymfonyLive Paris 2022 conference organized on April 7-8 2022. Join the team for a week of Symfony in French: 2-day workshops and 2-day conference!
SymfonyLive Paris 2022 : l'inscription early bird se termine le 10 janvier 2022
They have announced the workshops as well.
Les formations du SymfonyLive Paris 2022 sont en ligne
Early bird registration for SymfonyWorld Online 22 Summer edition ends January 14. Calls for presentations are open for it and SymfonyLive Paris.
SymfonyCasts picks back up on their security series and writes "we added an âemail verificationâ step to our registration by leveraging the symfonycasts/verify-email-bundle (hey! I know them!). Then we looked at actually validating the signed URL that we sent to the user to show *why* it failed when it does, and mark our user as âverifiedâ.
And apart from being more powerful and less complex, the new Symfony security system comes with new stuff! Like âlogin throttlingâ. We enable this & open up its source code to see how it works. Hint: it works via events!"
We continue to highlight a post of the week. This one was an obvious and easy decision.
This week I am choosing one of the most useful posts I've found in a long time. It's primarily about the frontend and self-explanatory.
10 Resources for Web Developers
API Platform creator KĂ©vin Dunglas writes: "Iâm very excited to announce that after 6 years of teamwork, Symfony and API Platform now include an industry-first set of tools designed to automatically create, manage and run the Docker containers needed for your applications."
Symfonyâs New Native Docker Support (Symfony World) Presentation
Dariusz Gafka explores "pushing the refactoring of our Symfony Applications to their boundaries. We will focus on dropping boilerplate completely so we can write only the code that matters, allowing us for easy modifications, maintenance and future extensions." We will focus on dropping boilerplate completely so we can write only the code that matters, allowing us for easy modifications, maintenance and future extensions."
Build Your Symfony and Doctrine ORM Applications with ease using Ecotone
Fabio Hiroki has another excellent article for us. This one covers using Symfony with the RabbitMQ message broker.
Introduction to RabbitMQ and Symfony
Mike Zukowski follows up on an article he wrote how to improve your applicationâs response time with lazy Twig extensions.
Testing Twig Extensions The Right Way
In previous communiques I shared Anders Björkland's articles on the SilverStripe CMS. Here's the latest one.
Query me some Google Books API
Regarding CMSs our next original article will cover those built with Symfony Components. Check back next Wednesday to read it.
There was an explosion of Drupal news this week. So, here we go.
Speaking of Twig, Drupal 10 will update its implementation of Twig from version 2 to 3. Here are the details so you can prepare.
Drupal uses the EventDispatcher component from Symfony, which implements the Mediator and Observer design patterns. This allows for business logic to be extensible without making systems entirely coupled. The originating system dispatches an event and allows any other system to react to that event or modify data associated with that event. The originating system can then perform other interactions after its observers have processed the event.
Registering your PHPUnit test as an event subscriber for testing events
While the Drupal Content Management (CMS) system is a popular solution for all-in-one websites, it also works well as a âcontent warehouseâ that other systems can pull from. In this tutorial, we will use Drupal Views to create two API endpoints that an app or website can use to request content from a Drupal CMS.
How to Create REST API Endpoints with Drupal Views
And finally on the Drupal front, here is a useful cheat sheet for developers.
Major Drupal configuration schema cheat sheet update.
Tanvir Ahmad shows us how to create PHP CLI application with the Symfony console component.
Easy Way to Create a Symfony Console Application
He also has this post.
How to Run Symfony Console Command in AWS Lambda
Sponsored Article
We published our first sponsored article on Symfony Station exploring how Code Execution Monitoring helps you identify bugs and bottlenecks in your Symfony app before your customers do. Like all our articles it is now available via audio.
Why You Should Use Code Execution Monitoring with Symfony
All sponsored articles are for products we have vetted and stand behind. We either use them or would do so if they were applicable to the Symfony Station site.
KĂ©vin Dunglas also writes: "In modern web applications, itâs a common pattern to serve the web API and the frontend app from different subdomains. This was the pattern implemented by API Platform until last year. But we changed that for 2 main reasons: performance and REST principles."
Preventing CORS Preflight Requests Using Content Negotiation
Alex Hernandez writes: "Over the years, Iâve learned how to set up Docker in a way itâs easy to use without needing to know every detail. Today I want to give you an easy-to-use template in order to use Docker with PHP, explained, so you can understand how it works in just 10 minutes."
Docker Template For PHP Explained
Vishwa Chikate asks: "how can we better implement the callback Class/Methods a.k.a the resource handlers associated with an REST HTTP API. The idea which will be covered will help #developers in having a Reusable, Extendable and an easily Maintainable code.
The approach outlined here can be applied to any PHP framework of choice or it can be considered as implementation practice in other languages / frameworkâs."
PHP: RESTful API resource handlers
Feel like building a PHP site from scratch? Jens Kuerschner, @jekuer, has the article for you.
Build a kick-ass PHP Microsite in under 4 hours
I found the following to be an interesting case study from Matt Kingshott @mattkingshott.
How I designed and built Lumenoâs recruitment search engine
I have shared work from Eelco Verbrugge, before. Here he explains PHP interfaces.
Christophe Avonture mentions that "As a loyal reader of several forums for years, I frequently find unreadable PHP code posted by beginners asking for help. Before we can try to help them, it is sometimes useful to reformat the code and rewrite it partially." He shows us how here.
Docker - Run/Refactor PHP code from a web interface
This is a short but very interesting post from Mike Zukowski.
Adding a watermark to a video in PHP
PHP Stripe API turns the agonizing task of collecting credit card payments into a matter of copy & paste. Itâs basically a JavaScript library that interfaces your web page to Stripeâs web servers. The information is never sent to your servers making it so effective. You donât have to stress over the server-side settings of your application.
The Stripe PHP library gives access to the Stripe API from applications composed within the PHP language. It incorporates a pre-defined set of classes for API that initialize themselves from the API which makes it compatible with a wide run of versions of the Stripe API.
Streamline Your Online Payments With PHP Stripe Payment Gateway Integration
Based on the most recent Stack Overflow survey in 2020, Python was the most used language according to 70% of its respondents, while PHP was chosen by 25%. However, market reports from w3techs.com tell a different story, showing that nearly 78% of all websites today run PHP. Much of PHPâs mainstay can be attributed to Wordpress and Shopify, which constitute around 45% of all websites today.
8 Reasons Why PHP Development Is Not Dead
Genuinely useful tips are always welcome, and Damian Brdej has these for PhPStorm.
8 most useful PhpStorm keyboard shortcuts
The State of the Octoverse from GitHub explores a year of change in programming. Its research tells you how to improve your performance and well-being by developing code, creating documentation, and supporting communities in smarter, more sustainable ways.
The Next Web looks at why shrinkflation is not a solution for inflation in the programming industry.
Donât let âshrinkflationâ affect your software development
Kesk gives us "eight little tips that can save you time in your day-to-day as a programmer. Some are basic while others could be a little complex."
8 Super-useful SQL Snippets Youâll Want to Have on Hand
Have you published or seen something related to Symfony or PHP that we missed? If so, please contact us.
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 any of our siteâs pages. Joining gets you each week's communique in your inbox (a day early). And follow us on Twitter at @symfonfystation.
Happy Coding Symfonistas!
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.
Subscribe to The Payload, our weekly newsletter exploring the Symfony Universe.