0

以下のコードをブラウザで実行すると、日付とイベントが次のように表示されます。

2013-10-30T05:30:00.000-07:00 - 2013-10-30T06:30:00.000-07:00 イベント 2

2013-10-29T23:00:00.000-07:00 - 2013-10-30T00:00:00.000-07:00 イベント 1

日付、時刻、およびイベントを独自の編集可能な ID に分離できるようにしたいのですが、それぞれのパラメーターをターゲットにする方法がわかりません。

たとえば、次のようになります。

イベント 2 - 2013 年 10 月 30 日、午後 5 時 30 分~午後 6 時 30 分

イベント 1 - 2013 年 10 月 29 日、午後 11 時から午前 0 時

コード:

$email = "yourEmail";
//your calendar has to be made public under calendar settings
$url = "http://www.google.com/calendar/feeds/".$email."/public/full";
$xml = file_get_contents($url);

$feed = simplexml_load_string($xml);
$ns=$feed->getNameSpaces(true);

foreach ($feed->entry as $entry) {
    $when=$entry->children($ns["gd"]);
    $when_atr=$when->when[0]->attributes();
    $start=$when_atr['startTime'];
    $end=$when_atr['endTime'];
    $title=$entry->title;

    echo "<p>".$title." ".$start." - ".$end."</p>";
}

この記事は参考になりましたが、Google カレンダーとの相対関係を作成する方法がわかりません。

4

2 に答える 2

0

このスレッドの人々からの少しの調査と助けの後、私はこれに答えを得ることができました!

PHP

<?php 
$email = "your public calendar address email";
$url = "http://www.google.com/calendar/feeds/".$email."/public/full";
$xml = file_get_contents($url);

$feed = simplexml_load_string($xml);
$ns=$feed->getNameSpaces(true);

foreach ($feed->entry as $entry) {
    $when=$entry->children($ns["gd"]);
    $when_atr=$when->when[0]->attributes();

    $title=$entry->title;
    echo "<div class='eventTitle'>".$title . "</div>";

    $start = new DateTime($when_atr['startTime']);
    echo "<div class='eventTime'>".$start->format('D F jS, g:ia') . " to ";    

    $end = new DateTime($when_atr['endTime']);
    echo $end->format('g:ia')."</div>" . '<br />' ;    



}

 ?>

CSS

<style>

 .eventTime {
    color:#0CF;
 }

 .eventTitle {
    color:#0FC; 
 }

 </style>

次のリソースが役に立ちました。

DateDate and Time、および@Glavić が投稿した例。

于 2013-10-30T22:07:19.990 に答える