private function getMethodArguments(\ReflectionMethod $method)
    {
        // ignore all query params
        $params = $this->paramReader->getParamsFromMethod($method);

        // check if a parameter is coming from the request body
        $ignoreParameters = [];
        if (class_exists(ParamConverter::class)) {
            $ignoreParameters = array_map(function ($annotation) {
                return
                    $annotation instanceof ParamConverter &&
                    'fos_rest.request_body' === $annotation->getConverter()
                        ? $annotation->getName() : null;
            }, $this->annotationReader->getMethodAnnotations($method));
        }

        // ignore several type hinted arguments
        $ignoreClasses = [
            Request::class,
            ParamFetcherInterface::class,
            ConstraintViolationListInterface::class,
            ParamConverter::class,
            MessageInterface::class,
        ];

        $arguments = [];
        foreach ($method->getParameters() as $argument) {
            if (isset($params[$argument->getName()])) {
                continue;
            }

            $argumentClass = $argument->getClass();
            if ($argumentClass) {
                $className = $argumentClass->getName();
                foreach ($ignoreClasses as $class) {
                    if ($className === $class || is_subclass_of($className, $class)) {
                        continue 2;
                    }
                }
            }

            if (in_array($argument->getName(), $ignoreParameters, true)) {
                continue;
            }

            $arguments[] = $argument;
        }

        return $arguments;
    }
private function getMethodArguments(\ReflectionMethod $method)
    {
        // ignore all query params
        $params = $this->paramReader->getParamsFromMethod($method);

        // check if a parameter is coming from the request body
        $ignoreParameters = [];
        if (class_exists(ParamConverter::class)) {
            $ignoreParameters = array_map(function ($annotation) {
                return
                    $annotation instanceof ParamConverter &&
                    'fos_rest.request_body' === $annotation->getConverter()
                        ? $annotation->getName() : null;
            }, $this->annotationReader->getMethodAnnotations($method));
        }

        // ignore several type hinted arguments
        $ignoreClasses = [
            Request::class,
            ParamFetcherInterface::class,
            ConstraintViolationListInterface::class,
            ParamConverter::class,
            MessageInterface::class,
        ];

        $arguments = [];
        foreach ($method->getParameters() as $argument) {
            if (isset($params[$argument->getName()])) {
                continue;
            }

            $argumentClass = $argument->getClass();
            if ($argumentClass) {
                $className = $argumentClass->getName();
                foreach ($ignoreClasses as $class) {
                    if ($className === $class || is_subclass_of($className, $class)) {
                        continue 2;
                    }
                }
            }

            if (in_array($argument->getName(), $ignoreParameters, true)) {
                continue;
            }

            $arguments[] = $argument;
        }

        return $arguments;
    }
private function getMethodArguments ( \ ReflectionMethod $ method ) { // ignore all query params $ params = $ this -> paramReader -> getParamsFromMethod ( $ method ) ; // check if a parameter is coming from the request body $ ignoreParameters = [ ] ; if ( class_exists ( ParamConverter :: class ) ) { $ ignoreParameters = array_map ( function ( $ annotation ) { return $ annotation instanceof ParamConverter && 'fos_rest.request_body' === $ annotation -> getConverter ( ) ? $ annotation -> getName ( ) : null ; } , $ this -> annotationReader -> getMethodAnnotations ( $ method ) ) ; } // ignore several type hinted arguments $ ignoreClasses = [ Request :: class , ParamFetcherInterface :: class , ConstraintViolationListInterface :: class , ParamConverter :: class , MessageInterface :: class , ] ; $ arguments = [ ] ; foreach ( $ method -> getParameters ( ) as $ argument ) { if ( isset ( $ params [ $ argument -> getName ( ) ] ) ) { continue ; } $ argumentClass = $ argument -> getClass ( ) ; if ( $ argumentClass ) { $ className = $ argumentClass -> getName ( ) ; foreach ( $ ignoreClasses as $ class ) { if ( $ className === $ class || is_subclass_of ( $ className , $ class ) ) { continue 2 ; } } } if ( in_array ( $ argument -> getName ( ) , $ ignoreParameters , true ) ) { continue ; } $ arguments [ ] = $ argument ; } return $ arguments ; }
Returns readable arguments from method.

@param \ReflectionMethod $method

@return \ReflectionParameter[]
Returns readable arguments from method .