サンプル/PHP/ユーザーAPI/栄養充足率の取得
ダウンロード:sample_mobadaiapi_extraservice_UserMealAnalyzeDay1.php
<?php
/**
* モバイルダイエットAPI ver.1 クライアントサンプル 栄養充足率の取得
*
* モバイルダイエットAPIを使用して栄養充足率を取得するサンプル<br />
*
* @package MobadaiSample
* @author west@imd.co.jp
* @version 1.0
*/
require_once 'HTTP/Request2.php';
define(APPKEY, "*****__FILL_IT!!__*****"); // このクライアントのアプリケーションキー
define(APPSEC, "*****__FILL_IT!!__*****"); // このクライアントのアプリケーションシークレット
define(MYSCHEME, "*****__FILL_IT!!__*****"); // スキーマ, http or https
define(MYSERVER, "*****__FILL_IT!!__*****"); // サーバー名
define(MYACCESSCODE, "*****__FILL_IT!!__*****"); // アクセスコード
define(MY_CHARSET, "UTF-8"); // 結果の文字コード指定
define(MY_RESTYPE, "json"); // 結果のフォーマット
define(CGI_VERSION, "v"); // バージョン
define(CGI_COMMAND, "c"); // コマンド
define(CGI_CATEGORY, "Category"); // カテゴリー
define(CGI_OPERATION, "Operation"); // コマンド
define(CGI_APPKEY, "AppKey"); // アプリケーションキー
define(CGI_AUTHTYPE, "UserAuth"); // 認証タイプ
define(CGI_USERID, "uid"); // ユーザーID
define(CGI_LOGINID, "loginid"); // ログインID
define(CGI_PASSWORD, "password"); // パスワード
define(CGI_STRUCTDATA, "StructData"); // アップロードXML
define(CGI_FORMAT, "Format"); // フォーマット
define(CGI_CHARSET, "Charset"); // 文字コード
$apiurl = MYSCHEME."://".MYSERVER."/services/api/".MYACCESSCODE."/";
echo "--- Request URL\n";
echo $apiurl."\r\n";
$my_uid = '****対象アカウントのモバイルダイエットID****'; // どちらか必須
$my_loginid = '****対象アカウントのログインID****'; // どちらか必須
$my_password = '****パスワード****';
$request = new HTTP_Request2($apiurl, HTTP_Request2::METHOD_POST);
$request->setConfig(
array(
'timeout' => 300,
'ssl_verify_host' => false,
'ssl_verify_peer' => false,
)
);
if( $my_uid ){
$idkey = CGI_USERID;
$idval = $my_uid;
}
if( $my_loginid ){
$idkey = CGI_LOGINID;
$idval = $my_loginid;
}
// クエリーを作成
$xml = "<?xml version='1.0' encoding='UTF-8' standalone='yes' ?>
<CallService>
<ServiceName>UserMealAnalyzeDay1</ServiceName>
<Param>
<date>2014/01/10</date>
</Param>
</CallService>";
// リクエストパラメータを生成
$req_param = array(
CGI_VERSION => 1,
CGI_APPKEY => APPKEY,
CGI_COMMAND => "Bu",
CGI_CATEGORY => "XST",
CGI_OPERATION => "cal",
CGI_AUTHTYPE => "userhashbb",
$idkey => $idval,
CGI_PASSWORD => sha1(APPSEC.$my_password),
CGI_STRUCTDATA => $xml,
CGI_FORMAT => MY_RESTYPE,
CGI_CHARSET => MY_CHARSET,
);
echo "--- Request Param\n";
var_dump($req_param);
echo "\n";
$request->addPostParameter($req_param);
try {
// リクエスト送出
$response = $request->send();
}
catch (Exception $e) {
echo "--- Exception\n";
echo $e->getMessage();
echo "\n";
exit(0);
}
if( $response->getStatus() != 200 ){
echo "HTTP Response Status Error ".$response->getStatus()."\n";
exit(0);
}
$json_resp = json_decode($response->getBody());
echo "--- Response Param\n";
if( $json_resp ){
foreach($json_resp->struct as $rv){
// stuffid 栄養素ID
// stuffname 栄養素名称
// value 摂取量
// border 基準量
// perc 充足率
// unitname 単位
echo $rv->stuffname."(".$rv->stuffid.") ".$rv->value."/".$rv->border."(".$rv->unitname.") ".$rv->perc."%\n"; }
}
echo "\n";
?>
アプリケーションキー: MsFv4r72HTSff3q1
アプリケーションシークレット: 7DBWE68DLJ1Q1tz6F5iunpdp
$ php ./sample_mobadaiapi_extraservice_UserMealAnalyzeDay1.php
--- Request URL
http://******.mobadai.jp/services/api/***/
--- Request Param
array(11) {
["v"]=>
int(1)
["AppKey"]=>
string(16) "MsFv4r72HTSff3q1"
["c"]=>
string(2) "Bu"
["Category"]=>
string(3) "XST"
["Operation"]=>
string(3) "cal"
["UserAuth"]=>
string(10) "userhashbb"
["loginid"]=>
string(4) "west"
["password"]=>
string(40) "f2132c72cdee7cc420ab2ab13999a7bb368b45b4"
["StructData"]=>
string(187) "<?xml version='1.0' encoding='UTF-8' standalone='yes' ?>
<CallService>
<ServiceName>UserMealAnalyzeDay1</ServiceName>
<Param>
<date>2014/01/10</date>
</Param>
</CallService>"
["Format"]=>
string(4) "json"
["Charset"]=>
string(5) "UTF-8"
}
--- Response Param
カロリー(stuff_e) 2135.1778/1716(kcal) 124%
蛋白質(stuff_p) 78.4558/50(g) 157%
飽和脂肪酸(stuff_fac1) 14.9984/5.75(g) 261%
n-6系多価不飽和脂肪酸(stuff_fac6) 13.91/11(g) 126%
n-3系多価不飽和脂肪酸(stuff_fac5) 1.9574/2.1(g) 93%
コレステロール(stuff_co) 498.36/750(mg) 66%
食物繊維(stuff_fiber) 12.5782/19(g) 66%
ビタミンD(stuff_vd) 2.44/5.5(mcg) 44%
ビタミンE(stuff_ve) 0/7(mg) 0%
ビタミンK(stuff_vk) 135.335/75(mcg) 180%
ビタミンB1(stuff_vb1) 2.0434/1.2(mg) 170%
ビタミンB2(stuff_vb2) 1.0556/1.3(mg) 81%
ナイアシン(stuff_vb3) 21.6712/13(mg) 167%
ビタミンB6(stuff_vb6) 1.0404/1.1(mg) 95%
ビタミンB12(stuff_vb12) 1.844/2(mcg) 92%
葉酸(stuff_vb9) 200.87/200(mcg) 100%
パントテン酸(stuff_vb5) 6.8532/5(mg) 137%
ビタミンC(stuff_vc) 51.024/85(mg) 60%
ナトリウム(stuff_na) 3940.164/3600(mg) 109%
食塩相当(stuff_nacl) 10.4242/9(g) 116%
カリウム(stuff_k) 1805.76/2500(mg) 72%
カルシウム(stuff_ca) 250.508/650(mg) 39%
マグネシウム(stuff_mg) 160.508/280(mg) 57%
リン(stuff_pp) 1025.106/1000(mg) 103%
鉄分(stuff_fe) 5.9344/6(mg) 99%
亜鉛(stuff_zn) 7.0432/10(mg) 70%
銅(stuff_cu) 0.8538/0.7(mg) 122%
マンガン(stuff_mn) 2.5218/4(mg) 63%
ヨウ素(iodine) 17.512/95(μg) 18%
セレン(selen) 114.02/25(μg) 456%
$