Chaining (disambiguation)¶
The word chaining appears in several distinct PHP concepts:
Chaining assignation: assigning the same value to several variables in a single expression, using successive
=operators (e.g.$a = $b = $c = 0;). Evaluated right to left. Magic methods are not triggered.Method chaining: calling methods successively on the return value of the previous call (e.g.
$object->m1()->m2()->m3()). The result of each method call is used to call the next one.Fluent interface: an object-oriented API design pattern that relies extensively on method chaining to create readable, expressive code. Not related to the
interfacekeyword.Chaining exceptions: re-throwing a caught exception wrapped inside a new exception, preserving the original error context via
Exception::getPrevious().Chaining new without parenthesis: since PHP 8.4, calling a method, accessing a property, or invoking
__invoke()directly on anewexpression without wrapping it in parentheses (e.g.new X()->foo()).
See also Method Chaining, Exception Chaining and Fluent Interface.
Related : Chaining Assignation, Fluent Interface, Chaining Exceptions, Chaining New Without Parenthesis, Methodcall, Expressive Interface