🎉 Hooray! After 3 years of work, I've finally released the ebook on design patterns! Check it out »
Adapter

Adapter in PHP

Adapter is a structural design pattern, which allows incompatible objects to collaborate.

The Adapter acts as a wrapper between two objects. It catches calls for one object and transforms them to format and interface recognizable by the second object.

Usage of the pattern in PHP

Complexity:

Popularity:

Usage examples: The Adapter pattern is pretty common in PHP code. It’s very often used in systems based on some legacy code. In such cases, Adapters make legacy code with modern classes.

Identification: Adapter is recognizable by a constructor which takes an instance of a different abstract/interface type. When the adapter receives a call to any of its methods, it translates parameters to the appropriate format and then directs the call to one or several methods of the wrapped object.

Adapter in Other Languages

Design Patterns: Adapter in Java Design Patterns: Adapter in C# Design Patterns: Adapter in C++ Design Patterns: Adapter in Python Design Patterns: Adapter in Ruby Design Patterns: Adapter in Swift Design Patterns: Adapter in TypeScript