Hey, I have just reduced the price for all products. Let's prepare our programming skills for the post-COVID era. Check it out »
Chain of Responsibility

Chain of Responsibility in PHP

Chain of Responsibility is behavioral design pattern that allows passing request along the chain of potential handlers until one of them handles request.

The pattern allows multiple objects to handle the request without coupling sender class to the concrete classes of the receivers. The chain can be composed dynamically at runtime with any handler that follows a standard handler interface.

Usage of the pattern in PHP

Complexity:

Popularity:

Usage examples: The Chain of Responsibility pattern isn’t very common in PHP because it requires the program to have chains of objects. Arguably, one of the most famous examples of using this pattern in PHP is HTTP Request Middleware described in PSR-15.

Identification: The pattern is recognizable by behavioral methods of one group of objects that indirectly call the same methods in other objects, while all the objects follow the common interface.

Chain of Responsibility in Other Languages

Design Patterns: Chain of Responsibility in Java Design Patterns: Chain of Responsibility in C# Design Patterns: Chain of Responsibility in C++ Design Patterns: Chain of Responsibility in Python Design Patterns: Chain of Responsibility in Ruby Design Patterns: Chain of Responsibility in Swift Design Patterns: Chain of Responsibility in TypeScript Design Patterns: Chain of Responsibility in Go