Nelmio\Alice\ParameterBag::get PHP Method

get() public method

public get ( string $key ) : mixed
$key string
return mixed
    public function get(string $key)
    {
        if ($this->has($key)) {
            return deep_clone($this->parameters[$key]);
        }
        throw ParameterNotFoundExceptionFactory::create($key);
    }

Usage Example

 /**
  * Resolves a parameter two times and if a different result is obtained will resolve the parameter again until two
  * successive resolution give the same result.
  *
  * {@inheritdoc}
  *
  * @param Parameter $parameter
  *
  * @throws RecursionLimitReachedException
  */
 public function resolve(Parameter $parameter, ParameterBag $unresolvedParameters, ParameterBag $resolvedParameters, ResolvingContext $context = null, ParameterBag $previousResult = null, int $counter = 1) : ParameterBag
 {
     if (null === $previousResult) {
         $result = $this->resolver->resolve($parameter, $unresolvedParameters, $resolvedParameters, $context);
         return $this->resolve($parameter, $unresolvedParameters, $resolvedParameters, $context, $result);
     }
     $parameterKey = $parameter->getKey();
     $previousParameterValue = $previousResult->get($parameterKey);
     $counter = $this->incrementCounter($counter, $this->limit, $parameterKey);
     $newResult = $this->resolver->resolve($parameter->withValue($previousParameterValue), $unresolvedParameters, $resolvedParameters, $context);
     $newParameterValue = $newResult->get($parameterKey);
     $result = $this->mergeResults($previousResult, $newResult);
     if ($previousParameterValue === $newParameterValue) {
         return $result;
     }
     return $this->resolve($parameter, $unresolvedParameters, $resolvedParameters, $context, $result, $counter);
 }