簡體   English   中英

沒有在PHP中獲取正確的JSON數據

[英]not getting proper JSON data in php

$events = array();
$employeeData = array();
foreach ($rows as $fetch)
{ 
    $employeeData['start_date'] = $fetch->start_date;
    $employeeData['events']['start_time'] = $fetch->start_time;
    $employeeData['events']['end_time'] = $fetch->end_time;

    $employeeData['events']['name'] = $fetch->FirstName. ' ' .$fetch->LastName;

   array_push($events, $employeeData);
}

$success_status = array(
    'events'=> $events
);

echo json_encode($success_status, true);

結果 - - - - - -

{“ events”:[{“ start_date”:“ 2018-05-27”,“ events”:{“ start_time”:“ 11:45:00”,“ end_time”:“ 13:00:00”,“名稱“:” Demo“}},{” start_date“:” 2018-06-29“,” events“:{” start_time“:” 15:30:00“,” end_time“:” 15:45:00“, “ name”:“ Demo”}},{“ start_date”:“ 2018-06-29”,“ events”:{“ start_time”:“ 16:30:00”,“ end_time”:“ 23:45:00 “,” name“:” Demo“}}]}

我得到上述結果,但我需要得到以下結果

{“ events :: [{” start_date“:” 2018-05-27“,” events“:[{” start_time“:” 11:45:00“,” end_time“:” 13:00:00“,” name“:” Demo“}]},{” start_date“:” 2018-06-29“,” events“:[{” start_time“:” 15:30:00“,” end_time“:” 15:45: 00“,” name“:” Demo“},{” start_time“:” 16:30:00“,” end_time“:” 23:45:00“,” name“:” Demo“}]}]}

我認為這應該在以后產生輸出,這是在要嵌套在[{...}]的數據上添加額外的數組層的情況。

$employeeData['events'][] = ['start_time' => $fetch->start_time, 
                             'end_time' =>$fetch->end_time,
                             'name' => $fetch->FirstName. ' ' .$fetch->LastName ];

因此,這使用[]僅將數據添加到一個數組中,而我將元素包裝到一個數組中,而不是將其添加為項目。

$employeeData['events']['start_time']基本上是將單個項目創建為關聯數組。 您想要的是一系列事件項。 因此,您需要將事件數據放入數組中,然后將該數組添加到events數組中,如下所示:

$events = array();
$employeeData = array();
foreach ($rows as $fetch)
{ 
    $event = [];
    $employeeData['start_date'] = $fetch->start_date;
    $event['start_time'] = $fetch->start_time;
    $event['end_time'] = $fetch->end_time;

    $event['name'] = $fetch->FirstName. ' ' .$fetch->LastName;
    $employeeData['events'][] = $event;

   array_push($events, $employeeData);
}

$success_status = array(
    'events'=> $events
);

echo json_encode($success_status, true);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM