Есть ли способ интерпретировать несколько параметров из строки запроса, которая выглядит следующим образом?
sort=key1:asc,key2:desc,key3:asc
Если нет, есть ли лучшая стратегия для передачи параметров сортировки с использованием строк запроса
Не проверено.В контроллере:
private function parseSortFromQueryString($sortStringToParse) { $sort = []; if(preg_match_all('/([a-zA-Z0-9_]+)(:(asc|desc))?/', $sortStringToParse, $matches, PREG_SET_ORDER)) { foreach($matches as $match) { $sort[$match[1]] = $match[3] ?? 'asc'; } } return $sort; } public function index(Request $request) { $sort = $this->parseSortFromQueryString($request->input('sort', [])); /* With your example * $sort = [ * key1 => asc * key2 => desc * key3 => asc * ] */ }