src/Aspect/AbstractContractAspect.php
protected function fetchMethodArguments(MethodInvocation $invocation): array
    {
        $result         = [];
        $parameters     = $invocation->getMethod()->getParameters();
        $argumentValues = $invocation->getArguments();

        // Number of arguments can be less than number of parameters because of default values
        foreach ($parameters as $parameterIndex => $reflectionParameter) {
            $hasArgumentValue = \array_key_exists($parameterIndex, $argumentValues);
            $argumentValue    = $hasArgumentValue ? $argumentValues[$parameterIndex] : null;
            if (!$hasArgumentValue && $reflectionParameter->isDefaultValueAvailable()) {
                $argumentValue = $reflectionParameter->getDefaultValue();
            }
            $result[$reflectionParameter->name] = $argumentValue;
        }

        return $result;
    }
protected function fetchMethodArguments(MethodInvocation $invocation): array
    {
        $result         = [];
        $parameters     = $invocation->getMethod()->getParameters();
        $argumentValues = $invocation->getArguments();

        // Number of arguments can be less than number of parameters because of default values
        foreach ($parameters as $parameterIndex => $reflectionParameter) {
            $hasArgumentValue = \array_key_exists($parameterIndex, $argumentValues);
            $argumentValue    = $hasArgumentValue ? $argumentValues[$parameterIndex] : null;
            if (!$hasArgumentValue && $reflectionParameter->isDefaultValueAvailable()) {
                $argumentValue = $reflectionParameter->getDefaultValue();
            }
            $result[$reflectionParameter->name] = $argumentValue;
        }

        return $result;
    }
protected function fetchMethodArguments ( MethodInvocation $ invocation ) : array { $ result = [ ] ; $ parameters = $ invocation -> getMethod ( ) -> getParameters ( ) ; $ argumentValues = $ invocation -> getArguments ( ) ; // Number of arguments can be less than number of parameters because of default values foreach ( $ parameters as $ parameterIndex => $ reflectionParameter ) { $ hasArgumentValue = \ array_key_exists ( $ parameterIndex , $ argumentValues ) ; $ argumentValue = $ hasArgumentValue ? $ argumentValues [ $ parameterIndex ] : null ; if ( ! $ hasArgumentValue && $ reflectionParameter -> isDefaultValueAvailable ( ) ) { $ argumentValue = $ reflectionParameter -> getDefaultValue ( ) ; } $ result [ $ reflectionParameter -> name ] = $ argumentValue ; } return $ result ; }
Returns an associative list of arguments for the method invocation

@param MethodInvocation $invocation
@return array
@throws \ReflectionException
Returns an associative list of arguments for the method invocation