Skip to content

Commit 4727b26

Browse files
maltehuebnerclaude
andcommitted
Handle array query parameters in list converters
PHP parses query strings like ?param[]=a&param[]=b as arrays. RequestToListConverter and ArrayToListConverter now join array values with comma before adding to RequestParameterList. Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
1 parent 58c7d2e commit 4727b26

2 files changed

Lines changed: 10 additions & 2 deletions

File tree

src/RequestParameterList/ArrayToListConverter.php

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,11 @@ public static function convert(array $array): RequestParameterList
1414
$requestParameterList = new RequestParameterList();
1515

1616
foreach ($array as $key => $value) {
17-
$requestParameterList->add($key, $value);
17+
if (is_array($value)) {
18+
$value = implode(',', $value);
19+
}
20+
21+
$requestParameterList->add($key, (string) $value);
1822
}
1923

2024
return $requestParameterList;

src/RequestParameterList/RequestToListConverter.php

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,11 @@ public static function convert(Request $request): RequestParameterList
1616
$requestParameterList = new RequestParameterList();
1717

1818
foreach ($request->query->all() as $key => $value) {
19-
$requestParameterList->add($key, $value);
19+
if (is_array($value)) {
20+
$value = implode(',', $value);
21+
}
22+
23+
$requestParameterList->add($key, (string) $value);
2024
}
2125

2226
return $requestParameterList;

0 commit comments

Comments
 (0)