la llamada ajax con esta variable data proporciona los datos POST esperados en el controlador (servidor)
Javascript: var data = "item[]=9&item[]=1&item[]=2&item[]=3&item[]=4&item[]=5&item[]=6&item[]=7&item[]=8" $.ajax({ data: data, type: 'POST', url: '/api/call' }); Controller: array:1 [ "item" => array:9 [ 0 => "1" 1 => "2" 2 => "4" 3 => "3" 4 => "5" 5 => "6" 6 => "7" 7 => "8" 8 => "9" ] ]en mi requisito, creo una nueva variable
Javascript: var data = "item[]=9&item[]=1&item[]=2&item[]=3&item[]=4&item[]=5&item[]=6&item[]=7&item[]=8" var = other_parameters => [ "host" => "host name" "session" => "current session" "timestamp" => "time stamp" ] let requestData = { other_parameters, data } $.ajax({ data: requestData, type: 'POST', url: '/api/call' }); Controller(Currently I get this data in the controller): array:2 [ "other_parameters" => array:3 [ "host" => "host name" "session" => "current session" "timestamp" => "time stamp" ] "data" => "item[]=1&item[]=2&item[]=3&item[]=5&item[]=4&item[]=6&item[]=7&item[]=8&item[]=9" ] Expected: array:2 [ "other_parameters" => array:3 [ "host" => "host name" "session" => "current session" "timestamp" => "time stamp" ], "data" => [ "item" => array:9 [ 0 => "1" 1 => "2" 2 => "4" 3 => "3" 4 => "5" 5 => "6" 6 => "7" 7 => "8" 8 => "9" ] ] ]Ayude a obtener los datos esperados en el controlador (servidor)
Podría intentar usar parse_str , REF: https://www.php.net/manual/en/function.parse-str.php
Ejemplo:
$str = 'item[]=1&item[]=2&item[]=3&item[]=5&item[]=4&item[]=6&item[]=7&item[]=8&item[]=9' parse_str($str, $output); var_dump($output); // Output array:1 [▼ "item" => array:9 [▼ 0 => "1" 1 => "2" 2 => "3" 3 => "5" 4 => "4" 5 => "6" 6 => "7" 7 => "8" 8 => "9" ] ]Debería llevarte a donde necesitas estar.
Editar:
Probablemente, una mejor manera sería convertir primero todos sus datos en una matriz JSON y enviarlos. Luego, solo use json_decode para obtener su matriz en PHP.