大家好,在stackexhange
我需要从文件夹
中复制多个.json文件我有多个JSON文件,我想解析,编辑和合并到一个对象,最终将重新编码并输出为单个JSON。
她的一个.json文件解码代码
<?php
if ( file_exists( BASE . '/contents/cache/recent-file.json' ) ) {
$recent_file = json_decode( file_get_contents( BASE . '/contents/cache/recent-file.json' ), true );
if ( $recent_file ) {
?>
<div class="items-list">
<?php
foreach( array_reverse($recent_file) as $key => $apps ) {
get_template( 'templates/app-item', $apps );
?>
</div>
<?php } } ?>
答案 0 :(得分:2)
你需要:
我的方法是:
//Get all the JSON files
$files = glob("/path/to/folder/*.json");
//Create an empty new array
$newDataArray = [];
//Get the contents of each file
foreach($files as $file){
$thisData = file_get_contents($file);
//Decode the json
$thisDataArray = json_decode($thisData);
//Add $thisData to the new array
$newDataArray[] = $thisDataArray;
}
//Encode the array to JSON
$newDataJSON = json_encode($newDataArray);
现在,您可以使用$newDataJSON
对象执行所需操作,例如将其保存到新的.json
文件中:
file_put_contents("/path/to/file.json",$newDataJSON);