我的json文件说ArrayArrayArray后排序和存储一个新的数组php


My json file says ArrayArrayArray after sorting and storing a new array with php

所以我需要帮助什么应该是一个简单的事情。我正在检索这个巨大的json文件,有多年的事件价值。整理出去年和今年的事件。将它们存储为一个新的数组,并尝试将它们存储为另一个。json文件,以便我可以将其与我用Javascript编写的日历脚本一起使用。

我的问题是,结果。json文件只是说arrayarrayarray的所有信息,而不是所有多维数组,它应该有信息。

$string = file_get_contents('events.json');
$json = json_decode($string, true);
$new_array = array();

// variables to set the time available for calendar
$year = date("Y-m-d");
$startTime = date("Y-m-d", strtotime($year . '-1 year'));
$startTime = date('Y-m', strtotime($startTime));
$endTime = date('Y-m-d', strtotime($year . '+1 year'));
$endTime = date('Y-m', strtotime($endTime));
foreach($json as $key => $value){
    $eventTime = $value['StartTime'];
    $eventTime = date('Y-m', strtotime($eventTime));
    if($eventTime >= $startTime && $eventTime <= $endTime){
        array_push($new_array, $value);
        //array_push($new_array, array($key => $value));
    }
}

// Store contents of array for Calendars use. 
json_encode($new_array);
file_put_contents('events1.json', $new_array);

json_encode函数不修改其参数。它返回一个新值。试着

file_put_contents('events1.json', json_encode($new_array));

$encoded_array = json_encode($new_array);
file_put_contents('events1.json', $encoded_array);