3

私は、標準の ISO 日時形式を使用して完全なカレンダーに挿入しています。テストしたところ、allDay フィールドが false に設定されていても、カレンダーに時刻を入力できませんでした。以下は私のphpコードです。

$eventdt = date_format($eventdate,'c');
$eventet = date_format($eventend,'c'); 
 $buildjson = array('id'=>"$eventtest",'title' => "$eventtest", 'start' => "$eventdt", 'end' => "$eventet", 'allDay' => 'false', 'backgroundColor' => "$eventc");
array_push($jsonArray, $buildjson);
echo json_encode($jsonArray);

このコードの出力は

[{"id":"106","title":"106","start":"2013-07-17T11:00:00+02:00","end":"2013-07-18T14:00:00+02:00","allDay":"false","backgroundColor":"#FF0000"},{"id":"107","title":"107","start":"2013-07-19T10:45:00+02:00","end":"2013-07-20T14:15:00+02:00","allDay":"false","backgroundColor":"#FF0000"},{"id":"108","title":"108","start":"2013-07-22T10:45:00+02:00","end":"2013-07-22T14:15:00+02:00","allDay":"false","backgroundColor":"#FF0000"},{"id":"109","title":"109","start":"2013-07-22T10:45:00+02:00","end":"2013-07-22T14:15:00+02:00","allDay":"false","backgroundColor":"#D7DF01"}]

datetime タグには、ローカル タイム ゾーンである +2:00 が追加されていることがわかりました。スクリプト内で値を手動で挿入しようとすると、カレンダーに時刻が反映されてしまう

手動挿入:

events: [   {
                title: 'class5 meeting',
                start: '2013-07-17T11:00:00',
                end: '2013-07-18T14:00:00',
                allDay: false,
                backgroundColor: '#ff0000'
                }
            ]

値が反映されるように、日付をトリミングして必要な値を送信する方法はありますか?

前もって感謝します!

4

1 に答える 1

2

問題はfalse、PHP で生成された JSON の「allDay」フィールドの値が であるのStringに対し、FullCalendar はBool.

$buildjson次のように変更してみてください。

$buildjson = array('id'=>"$eventtest",'title' => "$eventtest", 'start' => "$eventdt", 'end' => "$eventet", 'allDay' => false, 'backgroundColor' => "$eventc");(false引用符で囲まれていないことに注意してください)

于 2013-07-16T14:00:13.537 に答える