public static function fireFilter($event, $value) {
        $handlers = self::getHandlers($event);
        if (!$handlers) {
            return $value;
        }

        $args = array_slice(func_get_args(), 1);
        foreach ($handlers as $callbacks) {
            foreach ($callbacks as $callback) {
                $value = call_user_func_array($callback, $args);
                $args[0] = $value;
            }
        }
        return $value;
    }
public static function fireFilter($event, $value) {
        $handlers = self::getHandlers($event);
        if (!$handlers) {
            return $value;
        }

        $args = array_slice(func_get_args(), 1);
        foreach ($handlers as $callbacks) {
            foreach ($callbacks as $callback) {
                $value = call_user_func_array($callback, $args);
                $args[0] = $value;
            }
        }
        return $value;
    }
public static function fireFilter ( $ event , $ value ) { $ handlers = self :: getHandlers ( $ event ) ; if ( ! $ handlers ) { return $ value ; } $ args = array_slice ( func_get_args ( ) , 1 ) ; foreach ( $ handlers as $ callbacks ) { foreach ( $ callbacks as $ callback ) { $ value = call_user_func_array ( $ callback , $ args ) ; $ args [ 0 ] = $ value ; } } return $ value ; }
Chain several event handlers together.

This method will fire the first handler and pass its result as the first argument
to the next event handler and so on. A chained event handler can have more than one parameter,
but must have at least one parameter.

@param string $event The name of the event to fire.
@param mixed $value The value to pass into the filter.
@return mixed The result of the chained event or `$value` if there were no handlers.
Chain several event handlers together .