Fluent interfaces and method chaining: A potential hidden landmine
Of late, I have been doing some maintenance work on a legacy website which uses Laravel and PHP 7 (work on the upgrade is in progress). In testing, we found a situation where we were trying to call a method on a NULL
value. The line of code read as follows: $fleet = Chapter::find($this->getAssignedShip())->getAssignedFleet(true);
The code would then go on to properly use the $fleet
value, checking for whether or not it was NULL
before using it.