Metadata Attributes and Their Impact on Modern Development with PHP
PHP Attributes were added with version 8. In this post, I give an overview and my opinion on where and how to use them.
Articles about PHP, software architecture, algorithms and more.
PHP Attributes were added with version 8. In this post, I give an overview and my opinion on where and how to use them.
Pure Intersection Types in PHP8.1 are a language feature to have more control over return and parameter types.
Fibers are introduced to PHP and are a elegant way to simulate parallel work. Read more about how they differ from threads and coroutines.
Complete guide to PHP enums: pure vs backed enums, comparison, pre-8.1 patterns, when not to use enums, and best practices from production codebases.
Complete guide to PHP readonly properties (8.1) and readonly classes (8.2): immutability benefits, getters vs readonly, syntax differences, constraints, and when to use each.
Mocking in unit tests is a powerful technique. This post addresses when and how to use mocks properly in PHP.
Complete guide to PHP traits: what they are, what changed in PHP 8.0–8.3, why they violate SOLID principles, and why Dependency Injection is the better alternative.
Benthos - now Redpanda Connect - is a stream processor for data transformation. Learn the input/pipeline/output model, Bloblang, and a real AWS S3 example.
Introducing Keestash, my own password manager as a Software-as-a-Service product. Keestash is free and Open Source.
Practical guide to migrating PHP applications to Laminas and Mezzio: PSR compliance, module structure, Guzzle builder pattern, ConfigProvider caching, and PSR-7 stream pitfalls.