Я новичок в PHP и JSON и пытаюсь записать некоторые данные (которые я захватил из API Instagram) в json-файл. Я знаю, что я успешно декодировал и захватил массивы из Instagram в цикле foreach()
, потому что я могу повторить их, но я не могу их правильно записать в json. Когда я делаю, я просто получить один массив, в отличие от коллекции из них ... вот мой код:написать результаты foreach loop to json с php
foreach($instagram_array['data'] as $key => $image){
$id = $image['id'];
$url = $image['images']['standard_resolution']['url'];
$date_shot = date('M d, Y', $image['created_time']);
$likes = $image['likes']['count'];
};
//I've tried wrapping this below in a foreach loop as well, but without success
$values = array(
'id' => $id,
'url' => $url,
'likes' => $likes,
'date_shot' => $date_shot,
);
file_put_contents('mydata.json', json_encode($values, JSON_FORCE_OBJECT)); // I wondered if force_object was the problem, but same result without it...
Что я получаю это, только один раз (последний в цикле):
{
id: "123_456",
url: "http://whatever.jpg",
likes: 5,
date_shot: "Jan 19, 2015"
}
Когда я в надежде получить (я думаю), что-то больше, как это (весь цикл):
{
0: {
id: "123_456",
url: "http://whatever.jpg",
likes: 5,
date_shot: "Jan 19, 2015"
}
1: {
id: "123_457",
url: "http://whatever2.jpg",
likes: 10,
date_shot: "Jan 21, 2015"
}
2: {...}
}...
в конечном счете, цель будет объединить этот JSon файл с обновленной версией самой себя, как растущий файл, в случае, если он отличается сть с тем, как лучше подойти к записи в формате JSON в первую очередь ...
Каждая итерация Вашего цикла переписывает значения Варс. –