У меня есть этот PHP
код, который форматирует массив для меня,
$data = $dataQuery->fetchAll(PDO::FETCH_ASSOC);
if(count($data)){
$data_arr=array();
$data_arr["records"]=array();
$data_arr["records"] = $data;
return $response
->withHeader('Content-Type','application/json')
->withJson($data_arr, 200);
}
, и мой массив в формате,
"records": [
{
"ID": "1",
"LOCATION": "LOC1#LOC2#LOC3",
"TIMEFRAME": "1601-1650",
"TYPE": "mythological#genre#portrait"
},
{
"ID": "2",
"LOCATION": "LOC2",
"TIMEFRAME": "1851-1900",
"TYPE": "landscape"
}
]
И я пытаюсь отформатироватьэто похоже на следующее, взорвав все #
"records": [
{
"ID": "1",
"LOCATION": [{LOC1, LOC2, LOC3}],
"TIMEFRAME": "1601-1650",
"TYPE": [{mythological, genre, portrait}]
},
{
"ID": "2",
"LOCATION": "LOC2",
"TIMEFRAME": "1851-1900",
"TYPE": "landscape"
}
]
Как это,
//$data = $dataQuery->fetchAll(PDO::FETCH_ASSOC);
if($count['COUNT']>0/* &&count($data) */){
$data_arr=array();
$data_arr["records"]=array();
//$data_arr["records"] = $data;
while ($row = $dataQuery->fetch(PDO::FETCH_ASSOC)){
extract($row);
$row_array=array();
foreach ($row as $row_el){
array_push($row_array, explode('#', $row_el));
}
array_push($data_arr["records"], $row_array);
}
return $response
->withHeader('Content-Type','application/json')
->withJson($data_arr, 200);
}
Но это приводит к следующему результату,
"records":[
[
[
"1"
],
[
"LOC1",
"LOC2",
"LOC3"
],
[
"1601-1650"
],
[
"mythological",
"genre",
"portrait"
]
],
[
[
"2"
],
[
"LOC2"
],
[
"1851-1900"
],
[
"landscape"
]
]
]
Я ловлю этот ответ в Typescript / JavaScript, чтобы я мог отформатировать его и на стороне клиента.