LaravelVisitor is a Visitor Design Pattern implementation for Laravel. It allows to easily execute processing of collections of arbitrary elements, without requiring to use repeated conditionals, thus improving code abstraction.
Classes with a lot of lines of code are generally bad.
Too many responsibilities, low cohesion, or both.
However, sometimes it is not possible to make functions smaller. Reasons could be various.
What can be done in this circumstance?
This article describes a way of implementing Strategy design pattern using a database-based runtime configuration. The approach allows to dynamically (re)configure class behavior without requiring code-based rearrangements.
PHP 8.1 introduced the new Fiber class (see the proposed RFC here https://wiki.php.net/rfc/fiber), which allows running coroutines inside your script, i.e. two functions executing simultaneously