I have this array:
$arr = array( 'reportDescription' => array( 'reportSuiteID' => 'globretailprod', 'elements' => array( 0 => array( 'id' => $queryElement ) ), 'metrics' => array( 0 => array( 'id' => $queryMetric ) ) ) ); I'm trying to insert some code into the array using an if command. This is what I have:
if (isset($querySegment)) { $arr['reportDescription']['segments'] = $querySegment; } However that gives me the wrong result, what I am trying to achieve is this:
{ "reportDescription": { "reportSuiteID": "rbsglobretailprod", "dateFrom": "2018-09-09", "dateTo": "2018-09-10", "dateGranularity": "day", "metrics": [{ "id": "pageviews" }], "elements": [{ "id": "page" }], "segments": [{ "id": "jjj" }] } } Notice there are two issues with this. Firstly, segments isn't isn't insert with an id, it's just inserted as a value. Secondly, I am a bit concerned about the trailing comma after metrics in my original array, since I need to be able to add a comma after the metrics array if I do include segments.
$arr['reportDescription']['segments'] = ["id" => $querySegment]JSON_FORCE_OBJECToption ofjson_encode.