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

Strategy in PHP

Strategy is a behavioral design pattern that turns a set of behaviors into objects and makes them interchangeable inside original context object.

The original object, called context, holds a reference to a strategy object and delegates it executing the behavior. In order to change the way the context performs its work, other objects may replace currently linked strategy object with another one.

Learn more about Strategy

Usage of the pattern in PHP



Usage examples: The Strategy pattern is often used in PHP code, especially when it’s necessary to switch algorithms at runtime. However, the pattern has a strong competitor represented by anonymous functions, supported in PHP since 2009.

Strategy in Other Languages

Strategy in Java Strategy in C# Strategy in Python Strategy in Ruby Strategy in Swift Strategy in TypeScript