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

State in PHP

State is a behavioral design pattern that allows an object to change the behavior when its internal state changes.

The pattern extracts state-related behaviors into separate state classes and forces original object to delegate the work to an instance of these classes, instead of acting on its own.

Learn more about State

Usage of the pattern in PHP



Usage examples: The State pattern is occasionally used in PHP for turning large and cumbersome state machines based on switch operators into objects.

State in Other Languages

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