A Week of Work

A Week of Work

I was looking for the topics of this weeks blog but it seems like the PHP community is still in the summer hole. Sure, PHP 8.4 is still in the making and is awaited for November this year, but it is feature freezed and the already introduced features get a stable implementation now. So nothing … read more …

Laminas Framework Series: Middleware Deep Dive

Laminas Framework Middleware

The 5th post in the Laminas Framework series is about having a closer look into the middleware concept in Mezzio, a fast, flexible and modern web framework for Laminas. In Mezzio, each request has an associated request handler which can get wrapped by middlewares. The idea of middleware is therefore a key concept in the … read more …

Mail Injection in PHP: Attacks and Prevention

PHP Mail Injection: Attacks and Prevention

Email remains the cornerstone of digital communication, and it is unlikely to be replaced anytime soon. Despite the emergence of instant messaging, social media, and mobile chat apps, these technologies have complemented rather than replaced the traditional email. However, email is not without its vulnerabilities, particularly to mail injection attacks. Mail injection is a significant … read more …

Property Hooks RFC for PHP 8.4

Property Hooks Cloud

A couple of days ago, I wrote about PHP 8.4 and what to expect. Well, I should have wait a bit longer to include big news: the Property Hooks RFC passed the vote and will likely get added to PHP 8.4. With an overwhelming 34 to 1 “yes” – which is clearly above the required … read more …

PHP 8.4: Release Date and Features, April 2024

PHP 8.4 thumbnail

PHP 8.4 is poised to introduce a range of new features and updates that are designed to improve security, enhance functionality, and provide developers with new tools to manage and process data more efficiently. PHP 8.4 is expected to be released in November 2024. According to the Preparation Tasks list, the schedule is as follows: … read more …

Laminas Framework Series: Mezzio vs. MVC

MVC Mezzio

In the fourth post of the Laminas Framework Series I want to compare middlewares using Mezzio and the MVC framework by Laminas. The Laminas Framework, despite its relatively new, it is derived as a full-fledged derivative and successor to the Zend Framework, firmly anchoring it in the context of PHP-centric enterprise software development. Mezzio, once … read more …

PHP Traits 8.3: New Features But Still a Bad Concept

Back in those days when I worked intensively with Laravel, I wrote an article about PHP traits and when to use them. I outlined why traits in PHP are a bad compromise to bypass the “limitation” of single inheritance and which problems may occur when using traits intensively. Lastly, I gave my personal opinion about … read more …

Readonly Classes in PHP: A Useful Addition to Readonly Properties

Last year around this time, I asked the question whether readonly properties replace getters. I gave a short overview about “best practices” on object oriented programming, summarized the idea of immutable objects and demonstrated how readonly properties helps writing better and more robust code with PHP, before I finalized the blog with my opinion how … read more …

fsync Unlocked: PHP & Advanced Memory Synchronization

Back in 2021, PHP released version 8.1 and a very important feature that I want to address here: fsync and fdatasync. It always catches me off guard when such fundamental features are introduced into the language at such a late stage: fsync is a native operating system function and the only thing that needs to … read more …

Laminas Framework Series: Getting Started with Mezzio

In the third post of the Laminas Framework Series we will address the getting started with Mezzio. The Laminas Framework, though comparatively recent as an independent entity, originates as a complete fork and successor of the Zend Framework, embedding it firmly in the realm of PHP-based enterprise software development. Mezzio, previously recognized as Expressive, is … read more …