PluginProbe
The Innovative Form Builder – IvyForms / 1.5.1
The Innovative Form Builder – IvyForms v1.5.1
1.5.1 1.5 1.4.1 1.4 trunk 0.1.2 0.2 0.2.1 0.3 0.3.1 0.4 0.5 0.6 0.6.1 0.6.1-backup 0.6.1.1 0.7 0.8 0.8.1 0.8.2 0.9 0.9.1 1.0 1.1 1.1.1 All 27 releases
ivyforms / backend / scope-vendor / php-di / invoker / src / ParameterResolver / NumericArrayResolver.php

NumericArrayResolver.php in The Innovative Form Builder – IvyForms 1.5.1, at backend/scope-vendor/php-di/invoker/src/ParameterResolver/NumericArrayResolver.php

38 lines 1.1 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php declare(strict_types=1);
2
3 namespace IvyForms\Vendor\Invoker\ParameterResolver;
4
5 use ReflectionFunctionAbstract;
6
7 /**
8 * Simply returns all the values of the $providedParameters array that are
9 * indexed by the parameter position (i.e. a number).
10 *
11 * E.g. `->call($callable, ['foo', 'bar'])` will simply resolve the parameters
12 * to `['foo', 'bar']`.
13 *
14 * Parameters that are not indexed by a number (i.e. parameter position)
15 * will be ignored.
16 */
17 class NumericArrayResolver implements ParameterResolver
18 {
19 public function getParameters(
20 ReflectionFunctionAbstract $reflection,
21 array $providedParameters,
22 array $resolvedParameters
23 ): array {
24 // Skip parameters already resolved
25 if (! empty($resolvedParameters)) {
26 $providedParameters = array_diff_key($providedParameters, $resolvedParameters);
27 }
28
29 foreach ($providedParameters as $key => $value) {
30 if (is_int($key)) {
31 $resolvedParameters[$key] = $value;
32 }
33 }
34
35 return $resolvedParameters;
36 }
37 }
38