Zum Inhalt springen

Google+ Profil Informationen abfragen mit PHP und cURL

Google+ hat seine Tore für die Allgemeinheit geöffnet und vielleicht werden sich dann auch ein paar mehr Benutzer als die ganzen „Technikfreaks“ auf die Plattform verirren. Relativ zeitgleich wurde auch die API für Google+ freigeschaltet. Und heute stelle ich eine sehr rudimentäre Klasse vor, die den lesenden Zugriff auf die Profilinformationen ermöglicht.

Google bietet wie so oft einen Rest-Service an, um die Informationen abzufragen. Um die Abfrage überhaupt druchführen zu dürfen ist (z.B.) ein API-Key erforderlich. Diesen erhält man über die Google API Console.

Die Klasse benötigt natürlich genau diesen Key und die Google+ User Id. Daraus wird ein GET-Request formuliert und man erhält als Antwort einen JSON-String. PHP bietet dann mit json_decode ein Werkzeug an, um diesen String in eine Objekt-Struktur zu verwandeln und schon kann man auf die oben genannten Informationen in einer objektorientierten Art und Weise zugreifen. Die Klasse sieht unkommentiert so aus:

class GooglePlusPeople {
     const SERVICE_URL = "https://www.googleapis.com/plus/v1/people/";
     private $apiKey;
 
     function __construct($apikey) {
         $this->apiKey = $apikey;
     }

     public function getPerson($personId) {
         $url = GooglePlusPeople::SERVICE_URL . $personId . "?key=" . $this->apiKey;
         return json_decode($this->doGet($url));
     }

     private function doGet($url) {
         $ch = curl_init($url);
         curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
         $return = curl_exec($ch);
         curl_close($ch);
         return $return;
     } 
 }

Hier gibt es noch ein kleines Codebeispiel, wie man die Klasse nutzen kann und welche Informationen man bspw erhält.

$googlePlus = new GooglePlusPeople("<apikey>");

$person = $googlePlus->getPerson("<google+ user id>");
echo "Display Name: " . $person->displayName ."\n";
echo "Image Url: " . $person->image->url . "\n";
echo "About me: " . $person->aboutMe . "\n";

Mit diesen Informationen könnte man zum Beispiel in WordPress die Autor-Informationen anreichern und sie somit auf einem aktuellen Stand halten. Die Klasse bietet dafür die Grundlage. Sicherlich finden sich auch weitere Anwendungen.

Interessant an der API ist natürlich auch noch die Möglichkeit öffentliche Beiträge einer Person abzurufen. Diese Möglichkeit ist hier nicht betrachtet, funktioniert aber ähnlich.

Published inAllgemein

By continuing to use the site, you agree to the use of cookies. more information

The cookie settings on this website are set to "allow cookies" to give you the best browsing experience possible. If you continue to use this website without changing your cookie settings or you click "Accept" below then you are consenting to this.

Close