2017-10-27 10 views
0

イベントをカレンダーにロードしようとしています。JSONを正しくフォーマットする方法Laravel 5.5

私はイベントデータでJSONstringを作成する必要がありますが、これを行う方法を理解できません。私はデータの作成方法

$tickets = Ticket::where('mechanic_id', $request->mechanic_id)->get(); 

$tickets_json[] = []; 

foreach($tickets as $ticket) { 
    $tickets_json['title'] = $ticket->number; 
    $tickets_json['start'] = $ticket->planned_timestamp_start->format('d-m-Y H:i'); 
    $tickets_json['end'] = $ticket->planned_timestamp_end->format('d-m-Y H:i'); 
    $tickets_json['url'] = '/tickets/' . $ticket->id; 
} 

これが返されます。

array:5 [▼ 
    0 => [] 
    "title" => "452" 
    "start" => "27-10-2017 09:00" 
    "end" => "27-10-2017 12:00" 
    "url" => "/tickets/2" 
] 

これは私が望むものではないとする必要があります。

私はこのようにそれを必要とする

return response()->json($tickets_json);

をしかし、正しい形式を返しません:私は試してみました

{ 
title: '63782136', 
start: '27-10-2017 09:00', 
end: '"27-10-2017 12:00"', 
url: '/tickets/2' 
}, 
{ 
title: '23123', 
start: '27-10-2017 09:00', 
end: '"27-10-2017 12:00"', 
url: '/tickets/3' 
}, 
{ 
title: '432512', 
start: '27-10-2017 09:00', 
end: '"27-10-2017 12:00"', 
url: '/tickets/4' 
}, 

#data: "{"0":[],"title":"452","start":"27-10-2017 09:00","end":"27-10-2017 12:00","url":"\/tickets\/2"}" 

それは{追加されます」 0 ":[]、} 。

ありがとうございます。

+0

変更 '$ tickets_json [] = []:このコードは、あなたが以下のJSON出力を取得するために使用できる適切なフォーマットされた配列を与える

$tickets_json = []; $tickets->each(function ($ticket) use (&$tickets_json) { $tickets_json[] = [ 'title' => $ticket->numer, 'start' => $ticket->planned_timestamp_start->format('d-m-Y H:i'), 'end' => $ticket->planned_timestamp_end->format('d-m-Y H:i'), 'url' => '/tickets/' . $ticket->id ]; }); return $tickets_json; 

:以下は、トリックを行う必要があります'〜' $ tickets_json = []; 'になります。 – Marwelln

+0

しかし、私は1つの配列 – Rubberduck1337106092

+0

だけで$チケットを返す複数のチケットが必要ですか? getリクエストをすると、デフォルトでデータがjson配列に変換されます。 –

答えて

3

2次元目に配置したいときは、配列の最初の次元にデータを割り当てるのは間違いです。 ;

[ 
    { 
     "title": "63782136", 
     "start": "27-10-2017 09:00", 
     "end": "27-10-2017 12:00", 
     "url": "/tickets/2" 
    }, 
    { 
     "title": "23123", 
     "start": "27-10-2017 09:00", 
     "end": "27-10-2017 12:00", 
     "url": "/tickets/3" 
    } 
] 
+0

私の神、まさに私が必要なもの。承認限度が許せば、多くの感謝は答えを承認するでしょう。 – Rubberduck1337106092

関連する問題