| Autor | Zpráva | ||
|---|---|---|---|
| sir_lamoid Profil |
#1 · Zasláno: 6. 1. 2015, 13:52:52
Zdravím,
potřeboval bych jednoduchou věc. Mám dejme tomu json [
{
"idroom": 2,
"id": "5",
"typ": "dvere",
"id-backup": "5",
"coord-x": "188",
"coord-y": "21",
"size-w": "29",
"size-h": "30",
"rotation": "0"
},
{
"idroom": 2,
"id": "6",
"typ": "stul_90",
"id-backup": "6",
"coord-x": "103",
"coord-y": "141",
"size-w": "50",
"size-h": "50",
"rotation": "0"
},
{
"idroom": 2,
"id": "6",
"typ": "stul_90",
"id-backup": "7",
"coord-x": "188",
"coord-y": "101",
"size-w": "50",
"size-h": "50",
"rotation": "0"
}
]A potřebuji tenhle json překopat nějákými foreach atd na tento format: [
[
{
"idroom": 2,
"id": "5",
"typ": "dvere",
"id-backup": "5",
"coord-x": "188",
"coord-y": "21",
"size-w": "29",
"size-h": "30",
"rotation": "0"
}
],
[
{
"idroom": 2,
"id": "6",
"typ": "stul_90",
"id-backup": "6",
"coord-x": "103",
"coord-y": "141",
"size-w": "50",
"size-h": "50",
"rotation": "0"
},
{
"idroom": 2,
"id": "6",
"typ": "stul_90",
"id-backup": "7",
"coord-x": "188",
"coord-y": "101",
"size-w": "50",
"size-h": "50",
"rotation": "0"
}
]
]ala seřadit podle id do jednotlivých polí |
||
| DJ Miky Profil |
#2 · Zasláno: 6. 1. 2015, 15:02:41
Pokud si JSON zparsuješ (json_decode), pak je jedna možnost např. uložit si jednotlivé objekty do dvourozměrného pole:
$novePole = [];
foreach($puvodniPole as $polozka) {
$id = (int) $polozka->id;
if(isset($novePole[$id])) $novePole[$id][] = $polozka;
else $novePole[$id] = [ $polozka ];
}array(5 => array(jeden objekt), 6 => array(dva objekty)).
Pak už by mělo stačit ho seřadit podle klíče (ksort; to je nutné, pokud ve zdrojovém poli nejsou objekty seřazeny podle ID) a následně zbavit se klíčů (array_values). A pak převést zpět do JSON (json_encode). |
||
|
Časová prodleva: 12 let
|
|||
Toto téma je uzamčeno. Odpověď nelze zaslat.
0