シリアライズされた PHP の応答形式

PHP はserialize()unserialize()の機能を使うことで、内部にシリアライズされたデータ構造形式を持っています。

サーバからシリアライズされたPHP形式のAPI応答が返ってくるようにするには、"format"パラメータに"php_serial"と設定してリクエストを送ります。

戻り値として取得されたデータの構造は、JSON の応答で取得されるデータの構造と同じものです。 - 詳細についてはJSONのドキュメントを参照してください。

PHP 5でとても簡単なリクエストを実行する場合、コードはこのようになります:

#
#呼び出すAPI URLの作成
#

$params = array(
	'api_key'	=> '81e7e11aeac57ac668609d316f6388ce',
	'method'	=> 'flickr.photos.getInfo',
	'photo_id'	=> '251875545',
	'format'	=> 'php_serial',
);

$encoded_params = array();

foreach ($params as $k => $v){

	$encoded_params[] = urlencode($k).'='.urlencode($v);
}


#
#APIを呼び出し、サーバからの応答を復号する
#

$url = "https://api.flickr.com/services/rest/?".implode('&', $encoded_params);

$rsp = file_get_contents($url);

$rsp_obj = unserialize($rsp);


#
# 写真のタイトルを表示する(もしくは失敗時にエラーを表示する)
#

if ($rsp_obj['stat'] == 'ok'){

	$photo_title = $rsp_obj['photo']['title']['_content'];

	echo "Title is $photo_title!";
}else{

	echo "Call failed!";
}

ここで成功時のシリアライズされた PHP の応答形式を見ることができます。

ここで失敗時のシリアライズされた PHP の応答形式を見ることができます。



注意事項

  • 本サイトはflickrのサイトを翻訳したものであり、flickrに関する著作権は全てそちらに帰属しています。
  • 誤訳が判明した場合、より分かりやすい言い回しが見つかった場合、原文が変更された場合などにより、本サイトの内容は予告なく変更されることがあります。
  • 誤訳についての指摘や未翻訳部分についての助言など、ご意見についてはこちらへいただけると助かります。
  • 翻訳の内容には誤りがある可能性があります。本サイトの記述内容によって不利益が発生した場合も、サイト管理人は一切の責任を負いません。
  •