データを取得できませんでした…。
' ;
}
else
{
// HTML
$html .= '実行結果
' ;
$html .= '下記の内容で取得しました。
' ;
// ループ
foreach( $obj as $segments )
{
// 1日ごとのストーリーラインを解析
$html .= '' . $segments->date . '
' ;
foreach( $segments->segments as $item )
{
// 滞在場所の開始時間と終了時間
$start = date( 'H:i' , strtotime( $item->startTime ) ) ;
$end = date( 'H:i' , strtotime( $item->endTime ) ) ;
// 時間ごとの記録
$html .= '' . $start . '〜' . $end . '
' ;
// 場所の場合
if( $item->type == 'place' )
{
//場所名・場所タイプ・緯度・経度
$name = ( isset($item->place->name) && !empty($item->place->name) ) ? $item->place->name : '不明' ; // 場所名
$type = $item->place->type ; // 場所タイプ
$lat = $item->place->location->lat ; // 緯度
$lon = $item->place->location->lon ; // 経度
// 出力
$html .= '' ;
$html .= '- 名前
' ;
$html .= '- ' . $name . '
' ;
$html .= '- 場所タイプ
' ;
$html .= '- ' . $type . '
' ;
$html .= '- 緯度
' ;
$html .= '- ' . $lat . '
' ;
$html .= '- 経度
' ;
$html .= '- ' . $lon . '
' ;
$html .= '
' ;
}
// 運動の場合
elseif( $item->type == 'move' || $item->type == 'off' )
{
// 運動内容の解析
foreach( $item->activities as $activity )
{
//運動項目・カテゴリ・時間(秒)・距離(メートル)・カロリー(kcal)・歩数
$value = $activity->activity ; // 運動項目
$category = $activity->group ; // 運動カテゴリ
$duration = $activity->duration ; // 時間(秒)
$distance = $activity->distance ; // 距離(メートル)
$cal = ( isset($activity->calories) ) ? $activity->calories : '-' ; // カロリー(kcal)
$steps = ( isset($activity->steps) ) ? $activity->steps : '-' ; // 歩数
// トラックポイントを取得してる場合
$tracks = '' ;
if( isset( $activity->trackPoints ) )
{
// 個々のトラックポイントを取得
foreach( $activity->trackPoints as $points )
{
//緯度・経度・時間(ついでに整形)
$lat = $points->lat ;
$lon = $points->lon ;
$time = date( 'H:i:s' , strtotime($points->time) ) ;
//変数[$traks]に格納
$tracks .= '' . $time . ' … ' . $lat . ',' . $lon . '';
}
}
// 出力
$html .= '' ;
$html .= '- 項目
' ;
$html .= '- ' . $value . '
' ;
$html .= '- カテゴリ
' ;
$html .= '- ' . $category . '
' ;
$html .= '- 時間 (秒数)
' ;
$html .= '- ' . $duration . '
' ;
$html .= '- 距離 (メートル)
' ;
$html .= '- ' . $distance . '
' ;
$html .= '- カロリー
' ;
$html .= '- ' . $cal . '
' ;
$html .= '- 歩数
' ;
$html .= '- ' . $steps . '
' ;
// トラックポイントがある場合
if( $tracks )
{
$html .= '- トラックポイント
' ;
$html .= '' ;
}
$html .= '
' ;
}
}
}
}
}
// 取得したデータ
$html .= '取得したデータ
' ;
$html .= '下記のデータを取得できました。
' ;
$html .= 'JSON
' ;
$html .= '' ;
$html .= 'レスポンスヘッダー
' ;
$html .= '' ;
?>
Moves APIで指定期間のストーリーラインを取得するサンプルデモ
配布元: Syncer