| @@ 530-537 (lines=8) @@ | ||
| 527 | $parts = explode('=', $kvp, 2); |
|
| 528 | $key = $decoder($parts[0]); |
|
| 529 | $value = isset($parts[1]) ? $decoder($parts[1]) : null; |
|
| 530 | if (!isset($result[$key])) { |
|
| 531 | $result[$key] = $value; |
|
| 532 | } else { |
|
| 533 | if (!is_array($result[$key])) { |
|
| 534 | $result[$key] = [$result[$key]]; |
|
| 535 | } |
|
| 536 | $result[$key][] = $value; |
|
| 537 | } |
|
| 538 | } |
|
| 539 | ||
| 540 | return $result; |
|
| @@ 60-73 (lines=14) @@ | ||
| 57 | $parameter = self::urldecodeRfc3986($split[0]); |
|
| 58 | $value = isset($split[1]) ? self::urldecodeRfc3986($split[1]) : ''; |
|
| 59 | ||
| 60 | if (isset($parameters[$parameter])) { |
|
| 61 | // We have already recieved parameter(s) with this name, so add to the list |
|
| 62 | // of parameters with this name |
|
| 63 | ||
| 64 | if (is_scalar($parameters[$parameter])) { |
|
| 65 | // This is the first duplicate, so transform scalar (string) into an array |
|
| 66 | // so we can add the duplicates |
|
| 67 | $parameters[$parameter] = [$parameters[$parameter]]; |
|
| 68 | } |
|
| 69 | ||
| 70 | $parameters[$parameter][] = $value; |
|
| 71 | } else { |
|
| 72 | $parameters[$parameter] = $value; |
|
| 73 | } |
|
| 74 | } |
|
| 75 | ||
| 76 | return $parameters; |
|