Amazing PHP
9.95K subscribers
11 photos
84 links
Welcome to the Amazing PHP Channel! Here you can find a lot of interesting articles/news about PHP, frameworks, tools and development.

Support the channel: https://www.paypal.com/donate?hosted_button_id=FAYP5QJH5LVRL
Download Telegram
​​Writing better Regular Expressions in PHP
Regular Expressions are powerful, PHP but they are not known to be readable, and more often than not, maintaining a regular expression is not a straight-forward task.
PHP 8.1 is comingβ€Šβ€”β€Šand it already promises to be one of the best releases
The coming version of PHP, scheduled for November 2021, is already packed with a lot of super exciting features.
Design Patternsβ€Šβ€”β€ŠThe Observer Pattern
This is part 2 of my design patterns articles. A lot of credit to Christopher Okhravi. I’m trying to cover all his videos about design patterns from the book "Head First: Design Patterns".
​​Why our code tends to become big ball of mud over time
Our codebases seem to corrode over time. Overall quality tends to decrease. Each new change is harder to introduce. We all use OOP good practices, control our dependencies, adjust to SOLID principles and use patterns. And even so, our systems head toward becoming a big ball of mud inevitably. It turns out it is not enough to keep systems viable in an environment of relentless change.
​​Best practices for writing code comments
While there are many resources to help programmers write better codeβ€”such as books and static analyzersβ€”there are few for writing better comments. While it's easy to measure the quantity of comments in a program, it's hard to measure the quality, and the two are not necessarily correlated. A bad comment is worse than no comment at all. Here are some rules to help you achieve a happy medium.
Enums in PHP 8.1
They are finally coming β€” built-in support for enums will be added in PHP 8.1! Some might consider them long overdue, but you don't hear me complain; I'm glad they made it! This post is dedicated to looking at the newly added feature in-depth.
PHP 8: The JIT
The pros and cons of adding a JIT compiler to PHP. Dmitry Stogov recently opened an RFC to add a JIT compiler to PHP. So, what is that about? Does "JIT" mean "instantly better PHP", or is this a more nuanced topic? Today we'll briefly look at what the "JIT" actually does, and more importantly: the difficulties and opportunities it brings to the PHP world.
PHP: Named arguments are your friends
I stumbled upon an article in Stitcher.io that, in a few words, declares that developers should be aware that Named Arguments will break things. That’s quite weird when you consider they fix more than what they "break".
​​Modern PHP data Encryption/Decryption with Sodium extension
Throughout the years PHP has added support for several extensions, libraries, and algorithms to encrypt and decrypt data. With several libraries and extensions with various levels of maintenance, several algorithms each potentially carrying pros and cons, some even inherently being insecure, it is very difficult to select the appropriate PHP extension, library, encryption constructs, and balance the security and performance.
Starting with Microservices in PHP
In this article, we will take theory and apply it in practice using PHP.
We will use Ecotone Framework and RabbitMQ, to integrate two Services together.
Accessing private properties in PHP
Private properties can only be accessed by the class that defines the property… right? Actually, PHP has a few ways to circumvent this: reflection, closures and array casting.
6 Algorithms Every Developer Should Know
Hello, I am Richard. I am a developer, and you should know that I’m not a big fan of data structures and algorithms. If you can relate to this, don’t worry; after working on many projects (small and large), I discovered the six important algorithms that every developer should know, and these six will almost always solve every problem in your development process.
Do generators really reduce the memory usage?
Recently I noticed some controversy regarding memory usage with generators. It looks like that many people genuinely take generators as a tool that somehow can get them "a big performance boost" when working with large datasets. Sort of a magician's hat, where one can put any amount of data without affecting the PHP process' memory.
Unit testing tips by examples in PHP
In these times, the benefits of writing unit tests are huge. I think that most of the recently started projects contain any unit tests. In enterprise applications with a lot of business logic, unit tests are the most important tests, because they are fast and can us instantly assure that our implementation is correct. However, I often see a problem with good tests in projects, though these tests' benefits are only huge when you have good unit tests. So in these examples, I will try to share some tips on what to do to write good unit tests.
Stop using setters
In this article, I want to focus your attention on the problem with setters. Let’s talk about the problems:
​​Why we should avoid null in software development
In software development, null is a term that is often used to represent a lack of value or an unknown state. It’s a concept that has been around for a long time and has been a source of confusion and bugs in software development. In this article, we will explore why we should avoid null in software development and what we can do instead.
​​Avoiding the pitfalls of abstract and common services
In the ever-evolving world of software engineering, creating robust and maintainable applications is a constant challenge. One common mistake that engineers often make is creating overly common or abstract services. While the idea of reusability and abstraction is appealing, it can lead to a host of problems, including violations of the single responsibility principle and the open/closed principle. In this article, we will delve into the issues that engineers may encounter when creating generic services and highlight the importance of embracing specificity.
​​Unveiling the secret power of encapsulation
In the world of software development, encapsulation is a fundamental concept that plays a crucial role in building robust, maintainable, and scalable applications. Encapsulation is one of the four pillars of object-oriented programming (OOP), along with inheritance, polymorphism, and abstraction. It provides a mechanism to bundle related data and methods into a single unit, known as a class, and restricts direct access to the internal state of an object.
​​5 Books You Must Read as a Developer
In this article, we present a handpicked selection of five books that every developer should read to enrich their professional journey. These literary gems go beyond mere technical instruction manuals, offering profound insights, practical wisdom, and inspiring stories that can shape and elevate your approach to software development. Whether you’re a seasoned programmer looking to expand your horizons or a budding coder seeking guidance, these books will provide valuable perspectives, ignite creativity, and help you navigate the challenges of the ever-evolving tech landscape.
​​An Internet of PHP
PHP is big. The trolls can proclaim its all-but-certain β€œdeath” until the cows come home, but no amount of heckling changes that the Internet runs on PHP. The evidence is overwhelming. What follows is a loosely organised collection of precisely that evidence.