<?php

	// 設定項目
	$request_url = 'https://api.moves-app.com/api/1.1/activities' ;	// リクエストURL

	// JSONデータを取得する
	$curl = curl_init() ;
	curl_setopt( $curl , CURLOPT_URL , $request_url ) ;
	curl_setopt( $curl , CURLOPT_HEADER, 1 ) ; 
	curl_setopt( $curl , CURLOPT_SSL_VERIFYPEER , false ) ;								// 証明書の検証を行わない
	curl_setopt( $curl , CURLOPT_RETURNTRANSFER , true ) ;								// curl_execの結果を文字列で返す
	curl_setopt( $curl , CURLOPT_TIMEOUT , 5 ) ;										// タイムアウトの秒数
	$res1 = curl_exec( $curl ) ;
	$res2 = curl_getinfo( $curl ) ;
	curl_close( $curl ) ;

	// 取得したデータ
	$json = substr( $res1, $res2['header_size'] ) ;										// 取得したデータ(JSONなど)
	$header = substr( $res1, 0, $res2['header_size'] ) ;								// レスポンスヘッダー (検証に利用したい場合にどうぞ)

	// オブジェクトに変換する
	$obj = json_decode( $json ) ;

	// HTML用
	$html = '' ;

	// エラー判定
	if( !$obj )
	{
		$html .= '<p>データを取得できませんでした…。</p>' ;
	}
	else
	{
		// HTML
		$html .= '<h2>実行結果</h2>' ;
		$html .= '<p>下記の内容で取得しました。</p>' ;

		foreach( $obj as $item )
		{
				// 各データの整理
				$activity = $item->activity ;	// 運動項目
				$geo = ( $item->geo ) ? 'true' : 'false' ;	// 位置が関係するか
				$place = ( $item->place ) ? 'true' : 'false' ;	// 場所が関係するか
				$color = $item->color ;	// 色
				$units = $item->units ;	// 含む項目

				// 出力
				$html .= '<dl>' ;
				$html .= 	'<dt>項目</dt>' ;
				$html .= 		'<dd>' . $activity . '</dd>' ;

				// グループ
				if( isset( $item->group ) && !empty( $item->group ) )
				{
					$html .= 	'<dt>グループ</dt>' ;
					$html .= 		'<dd>' . $item->group . '</dd>' ;
				}

				$html .= 	'<dt>位置情報</dt>' ;
				$html .= 		'<dd>' . $geo . '</dd>' ;
				$html .= 	'<dt>場所情報</dt>' ;
				$html .= 		'<dd>' . $place . '</dd>' ;
				$html .= 	'<dt>色</dt>' ;
				$html .= 		'<dd>' . $color . '</dd>' ;
				$html .= 		'<dd><div style="min-height:1em;background:#' . $color . '"></div></dd>' ;
				$html .= 	'<dt>データ</dt>' ;
				$html .= 		'<dd>' . $units . '</dd>' ;
				$html .= '</dl>' ;
		}
	}

	// 取得したデータ
	$html .= '<h2>取得したデータ</h2>' ;
	$html .= '<p>下記のデータを取得できました。</p>' ;
	$html .= 	'<h3>JSON</h3>' ;
	$html .= 	'<p><textarea rows="8">' . $json . '</textarea></p>' ;
	$html .= 	'<h3>レスポンスヘッダー</h3>' ;
	$html .= 	'<p><textarea rows="8">' . $header . '</textarea></p>' ;

?><!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<meta name="robots" content="noindex,nofollow">

		<!-- ビューポートの設定 -->
		<meta name="viewport" content="width=device-width, initial-scale=1.0">

		<title>Moves APIで運動項目一覧を取得するサンプルデモ</title><!-- 

/********************************************************************************

	SYNCER 〜 知識、感動をみんなと同期(Sync)するブログ

	* 配布場所
	https://syncer.jp/moves-api-matome

	* 動作確認
	https://syncer.jp/moves-api-matome/demo/activity-list.php

	* 最終更新日時
	2015/08/03 03:56

	* 作者
	あらゆ

	** 連絡先
	Twitter: https://twitter.com/arayutw
	Facebook: https://www.facebook.com/arayutw
	Google+: https://plus.google.com/114918692417332410369/
	E-mail: info@syncer.jp

	※ バグ、不具合の報告、提案、ご要望など、お待ちしております。
	※ 申し訳ありませんが、ご利用者様、個々の環境における問題はサポートしていません。

********************************************************************************/

		-->
	</head>
<body>



<?php echo $html ?>


<p style="text-align:center"><a href="https://syncer.jp/moves-api-matome">配布元: Syncer</a></p>






</body>
</html>