[ { "city": "Wroclaw", "data": [ { "id": "#", "name": "Zlote tarasy", "city": "Wroclaw", "post_code": "50-545", "street": "Ko\u015bciuszki", "house_no": "2", "flat_no": "4", "opening_hours": "8:00 - 16:00", "latitude": 52.2330649, "longitude": 20.9207689, "description": "Opis sklepu" }, { "id": "#", "name": "Arkadia", "city": "Wroclaw", "post_code": "50-545", "street": "Ko\u015bciuszki", "house_no": "2", "flat_no": "4", "opening_hours": "8:00 - 16:00", "latitude": 52.2571437, "longitude": 20.9822873, "description": "Opis sklepu" } ] }]
Tutaj moja metoda tworzenia tablicy:
public function getCollectionAsArray() { $stores = $this->getStoreCollection(); foreach ($stores as $store) { 'city' => $store->getCity(), [ 'id' => $store->getIdentifier(), 'name' => $store->getName(), 'post_code' => $store->getPostCode(), 'street' => $store->getStreet(), 'house_no' => $store->getHouseNo(), 'flat_no' => $store->getFlatNo(), 'latitude' => $store->getLatitude(), 'longitude' => $store->getLongitude(), 'description' => $store->getDescription() ], ), ); } return $jsonArray; }
Całość działa z wyjątkiem jednej rzeczy, a mianowicie w przypadku kilku sklepów w tym samym mieście, zamiast dodać nowe dane do pola 'data' dodaje całkiem nowy klucz z nowym miastem:
0 => 'city' => string 'Wrocław' (length=8) 'data' => 0 => ... 1 => 'city' => string 'Wrocław' (length=8) 'data' => 0 =>
Próbowałem już kombinować z array_merge i array_push ale bezskutecznie. Bardzo proszę o pomoc
