Reputation: 473
I'm pretty sure I'm quite close so hopefully quick answer.
I'm able to generate this JSON:
apps: [
{
0: {
PublisherCount: "7"
},
Id: "87",
AppName: "Productivity, Focus, Habits & Life Success by Audiojoy",
AppBundle: "productivitymind"
}
]
But I'm trying to get to:
apps: [
{
Id: "87",
AppName: "Productivity, Focus, Habits & Life Success by Audiojoy",
AppBundle: "productivitymind",
PublisherCount: "7"
}
]
Here is my output loop (I think the issue is in the 5th row where I array_push the new value for PublisherCount
. It creates an additional node instead of adding it to the end.
$temp_array = array();
$i = 0;
while ($row = mysqli_fetch_assoc($publisher_apps)) {
$temp_array[] = $row;
$temp_array[$i][] = fetch_all(get_publisher_count_by_app_id($row['Id']))[0];
$i++;
}
$publisher_apps = $temp_array;
$result = array("apps"=>$publisher_apps);
output_json($result);
Thanks.
Upvotes: 0
Views: 61
Reputation: 850
Change it to this:
$temp_array = array();
while ($row = mysqli_fetch_assoc($publisher_apps)) {
$row['PublisherCount'] = fetch_all(get_publisher_count_by_app_id($row['Id']))[0]['PublisherCount'];
$temp_array[] = $row;
}
$publisher_apps = $temp_array;
$result = array("apps"=>$publisher_apps);
output_json($result);
Upvotes: 0
Reputation: 41820
You have rows like this:
['Id' => "87",
'AppName' => "Productivity, Focus, Habits & Life Success by Audiojoy",
'AppBundle' => "productivitymind"]
and fetch_all(get_publisher_count_by_app_id($row['Id']))[0]
returns an array like this:
['PublisherCount' => 7]
so when you append it with $temp_array[$i][]
, the entire array gets assigned to the 0
key of $temp_array[$i]
.
There are various different ways you could get just the PublisherCount
value. One way is to use array_merge
to combine the result of get_publisher_count_by_app_id
with $row
, and then add the modified $row
to your main array.
while ($row = mysqli_fetch_assoc($publisher_apps)) {
$count = fetch_all(get_publisher_count_by_app_id($row['Id']))[0];
$temp_array[] = array_merge($row, $count);
}
If you do it this way, $i
should become unneccessary.
Upvotes: 1