Я пытаюсь сортировать каждый файл в каталоге, читать данные json, декодировать его, помещать в массив и затем записывать все в новый файл.Консолидация данных JSON в PHP?
Проблема, с которой я столкнулся, - это результирующий массив, это просто массив массивов данных json.
Вот мой код:
$AllAppointmentDataFileName = 'AllAppointmentData.jsonp';
$AllAppointmentDataURL = '../Appointments/' . $AllAppointmentDataFileName;
if ($handle = opendir('../Appointments')) {
while (false !== ($entry = readdir($handle))) {
if ($entry != "." && $entry != ".." && $entry != $AllAppointmentDataFileName) {
$AllAppointmentData .= json_decode(file_get_contents('../Appointments/' . $entry));
print_r($AllAppointmentData); echo "<br>";
echo "$entry:<br>" . file_get_contents('../Appointments/' . $entry) . "<br>";
}
}
closedir($handle);
}
file_put_contents($AllAppointmentDataURL, json_encode($AllAppointmentData));
print_r просто возвращает "Array."
Да, причина ' print_r' prints «Array» - это потому, что массив, полученный из 'json_decode', передается в строку. – migg
Хорошо. Я изменил это. Теперь, в моем json-файле, он ведет с '' [['', так как есть два файла. Это все еще считается правильным JSON-форматом (который будет доступен для чтения любым декодером/считывателем JSON)? Я думаю, что формат в настоящий момент является «[[{« Имя »:« Значение »,« Имя »:« Значение »}] [{« Имя »:« Значение »,« Имя »:« Значение »}]]' – JVE999
@ Джамиль: Помимо недостающей запятой между двумя массивами, да, это действительно JSON. – PleaseStand