For some reason i cannot get my content right while it seems identical i am missing something.
This is the hardcoded data i am using to compare my JSON output to:
$payload2 = '{
"vehicles": [
{
"vehicle_id": "my_vehicule",
"start_address": {
"location_id": "berlin",
"lon": 13.406,
"lat": 52.537
}
}
],
"services": [
{
"id": "hamburg",
"name": "visit_hamburg",
"address": {
"location_id": "hamburg",
"lon": 9.999,
"lat": 53.552
}
},
{
"id": "munich",
"name": "visit_munich",
"address": {
"location_id": "munich",
"lon": 11.57,
"lat": 48.145
}
},
{
"id": "cologne",
"name": "visit_cologne",
"address": {
"location_id": "cologne",
"lon": 6.957,
"lat": 50.936
}
}
]
}';
And here is my built query:
$currentDriverPositionLatitude = $currentDriverPosition['latitude'];
$currentDriverPositionLongitude = $currentDriverPosition['longitude'];
$services = [];
$vehiculeUid = 'my_vehicule';
$vehiculePositionUid = '2222-3333-4444-5555';
$services1Id = 'location1Id';
$services1Name = 'location1Name';
$services1LocationId = 'location1Uid';
$services1LocationLatitude = 4.8945;
$services1LocationLongitude = 5.8945;
$services2Id = 'location1Id';
$services2Name = 'location2Name';
$services2LocationId = 'location2Uid';
$services2LocationLatitude = 6.8945;
$services2LocationLongitude = 7.8945;
$services3Id = 'location1Id';
$services3Name = 'location3Name';
$services3LocationId = 'location3Uid';
$services3LocationLatitude = 8.8945;
$services3LocationLongitude = 9.8945;
$services1 = collect([
"id" => $services1Id,
"name" => $services1Name,
"address" => collect([
"location_id" => $services1LocationId,
"lon" => $services1LocationLongitude,
"lat" => $services1LocationLatitude,
])
]);
$services2 = collect([
"id" => $services2Id,
"name" => $services2Name,
"address" => collect([
"location_id" => $services2LocationId,
"lon" => $services2LocationLongitude,
"lat" => $services2LocationLatitude,
])
]);
$services3 = collect([
"id" => $services3Id,
"name" => $services3Name,
"address" => collect([
"location_id" => $services3LocationId,
"lon" => $services3LocationLongitude,
"lat" => $services3LocationLatitude,
])
]);
array_push($services, $services1);
array_push($services, $services2);
array_push($services, $services3);
$payload = collect([
"vehicles" => [
collect([
"vehicle_id" => $vehiculeUid,
"start_address" => collect([
"location_id" => $vehiculePositionUid,
"lon" => $currentDriverPositionLongitude,
"lat" => $currentDriverPositionLatitude,
])
]),
],
"services" => $services,
]);
The output is identical from what i can gather.