ホームページ >バックエンド開発 >PHPチュートリアル >NP-Gravatar を使用して Gravatar でアバターを取得します

NP-Gravatar を使用して Gravatar でアバターを取得します

WBOY
WBOYオリジナル
2016-07-25 09:11:191070ブラウズ
  1. //インスタンスの作成:
  2. $gravatarService = new NP_Service_Gravatar_Profiles();
  3. //応答形式をXMLに変更:
  4. $gravatarService->setResponseFormat(new NP_Service_Gravatar_Profiles_ResponseFormat_Xml());
  5. //プロファイルデータを取得します。
  6. $profile = $gravatarService->getProfileInfo('foo@bar.com');
  7. //$profile は NP_Gravatar_Profile のインスタンスなので、そのプロパティの一部にアクセスできます。
  8. echo 'ID: ' 。 $profile->id 。 '
    ';
  9. echo 'ユーザー名: ' . $profile->getPreferredUsername() 。 '

    ';
  10. echo '写真:
    ';
  11. foreach($profile->getPhotos() as $photo) {
  12. echo '< img src="' . $photo->value . '" />
    ';
  13. }
  14. //応答形式を JSON に変更します:
  15. $gravatarService->setResponseFormat(new NP_Service_Gravatar_Profiles_ResponseFormat_Json());
  16. //プロファイル データを取得しますが、生の Zend_Http_Response オブジェクトを強制的に返す、
  17. // getProfileInfo() メソッドの 2 番目の引数にブール値 true を渡します:
  18. $response = $gravatarService->getProfileInfo('foo@bar.com', true);
  19. if ($responseinstanceof Zend_Http_Response) { // true!
  20. //何かをします
  21. }
  22. //応答形式を QR コードに変更します:
  23. $gravatarService->setResponseFormat(new NP_Service_Gravatar_Profiles_ResponseFormat_QRCode());
  24. //QR コード応答は NP_Gravatar_Profile オブジェクトとしてエクスポートできません。
  25. //応答形式タイプは
  26. //NP_Service_Gravatar_Profiles_ResponseFormat_ParserInterface インターフェイスを実装していません。
  27. //そのため、使用する場合は常に生の Zend_Http_Response オブジェクトが返されます
  28. //その応答形式:
  29. $response = $gravatarService->getProfileInfo('foo@bar. com');
  30. echo $response->getHeader('Content-type'); //「image/png」を印刷します。
复制代
  1. //Gravatar XML-RPC 実装には、
  2. //認証プロセス用の API キーが必要です。これは、wordpress.com の
  3. //プロフィール編集用のページで取得できます。
  4. $apiKey = 'someAPIKey';
  5. $email = 'foo.bar@foobar.com'; //$apiKey に関連付けられたメール アドレス。
  6. //インスタンスの作成:
  7. $gravatarXmlRpc = new NP_Service_Gravatar_XmlRpc($apiKey, $email);
  8. //指定されたメール アドレスで登録された Gravatar アカウントがあるかどうかを確認します。
  9. $result = $gravatarXmlRpc->exists(array(
  10. 'posa.nikola@gmail.com', //それは私です。:D
  11. 'foo@example.com'
  12. ));
  13. $values = array_values($result);
  14. echo (bool)$values[0]; //Gravatar アカウントを持っているため、「true」を出力します。 :)
  15. echo (bool)$values[1]; //その 2 番目の電子メール アドレスはおそらく存在しないため、「false」を出力します。
  16. //現在のアカウントのユーザー画像を取得します:
  17. $images = $gravatarXmlRpc->userImages();
  18. //$image はインスタンスですNP_Service_Gravatar_XmlRpc_UserImage の、
  19. //
  20. //userImages() メソッドの実行時に $raw パラメーターを "true" として渡さなかったため、
  21. $image = $images[0];
  22. $imageUrl = $image->getUrl( ); // Zend_Uri_Http.
  23. echo のインスタンス $image->getRating(); // いくつかの評価 (G、PG、R または X) を出力します。
  24. // 現在のアカウントのユーザー画像としていくつかの画像を保存します。
  25. $this->_gravatarXmlRpc->saveData('path/to/someImage .jpg', NP_Service_Gravatar_XmlRpc::PG_RATED);
复制代码
  1. //Gravatar URLを生成しています。
  2. echo ';
  3. // Gravatar URLを生成していますサイズと評価のオプションを指定します。
  4. echo ';
  5. //完全なパラメータ名もサポートされています。
  6. echo ';
  7. //Gravatar URL を生成し、ファイルタイプの拡張子を指定します。
  8. echo ';
  9. //上記のビュー ヘルパー呼び出しにより、次の URL が生成されます。
  10. //http://www.gravatar.com/avatar/f3ada405ce890b6f8204094deb12d8a8.jpg?s=200
复制發


声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。