Up to date

twitter-php

28.1.2011 von Andreas Hitzig

ca. 3:45 Min
Ratgeber
VG Wort Pixel
  1. Twitter-API mit PHP nutzen
  2. twitter-php
  3. Timeline und Status
image.jpg
Eine Abfrage der allgemeinen Timeline ergibt Gezwitscher in unterschiedlichen Sprachen.
© Internet Magazin

Sie laden als Erstes die Bibliothek und legen dann eine neue Instanz an und geben dafür Ihren Benutzer und das zugehörige Passwort mit. Anschließend rufen Sie die Funktion send() auf und geben dieser Ihren aktuellen Status mit. Der Rückgabewert dieser Funktion ist ein boolscher Wert und beschreibt den Status des Updates: erfolgreich stattgefunden oder Fehler. Daneben bietet Twitter-php eine weitere Funktion zum Laden von Timelines an. Dieser Funktion load() können unterschiedliche Parameter mitgegeben werden:

  • ME: Es werden nur Ihre Statusnachrichten geladen
  • ME_AND_FRIENDS: Ihre Statusnachrichten und die Ihrer Freunde werden berücksichtigt
  • REPLIES: Tweets an die angegebene Benutzeradresse
require_once 'twitter.class.php';
Twitter::$cacheDir = dirname
(__FILE__) . '/temp';
$twitter = new Twitter
('Benutzer', 'Passwort');
$channel = $twitter->load
(Twitter::ME_AND_FRIENDS);

Besonders zu erwähnen sind die zweite und vierte Programmzeile. In der zweiten aktivieren Sie einen lokalen Cache, der die Ergebnisse Ihrer Abfrage in eine lokale XML-Datei im Verzeichnis temp ablegt. Diese können Sie anschließend bei Bedarf weiterverarbeiten. In der vierten Programmzeile lädt das Programm alle aktuellen Statusupdates von Ihnen und den abonnierten Kanälen. Die Ausgabe erfolgt als HTML, die Abarbeitung der Inhalte im Beispiel über PHP:

<?foreach ($channel->status as
$status): ?>
..<li><a href="https://twitter.com/<?=$status->user->screen_name?>"><img src="<?=$status->user->
profile_image_url?>"><?=$status->user->name?></a>:..<?=$status->text?>
.. <small>um <?=date("j.n.Y H:i",
strtotime($status->created_at))?></small>
..</li><?endforeach?>

Die Variable channel$ ist ein SimpleXML-Element, auf das Sie über die einzelnen Tags zugreifen können. In der Ausgabe wird das Bild zum jeweiligen Tweet, der Name des Benutzers, die Meldung sowie der Zeitstempel der Meldung ausgegeben. Auf die einzelnen Elemente der XML-Struktur greifen Sie über einen Zeiger zu. Die Information des Benutzernamens finden Sie beispielsweise in der Struktur <user> als Tag <name>. Der Zugriff erfolgt deswegen über user->name.Damit Sie sich den kompletten Pfadnamen sparen können und nur den variablen Teil betrachten, wird als Erstes der aktuelle Channel inklusive der Struktur status als Einstiegspunkt der Variable $status übergeben. Wichtig bei der Ausgabe ist das Ausgabeformat - da die XML-Daten im Format UTF-8 abgelegt sind, muss für die korrekte Darstellung der Sonderzeichen dieses Format auch Ihrer HTML-Seite mitgegeben werden. Nutzen Sie dazu das HTML-Tag <META>

<meta http-equiv="Content-Type"
content="text/html; charset=UTF-8">

My Twitter

Eine gute Wahl, wenn es um die Abfrage und Darstellung der verschiedenen Timelines zu verfolgen ist die Bibliothek My Twitter von Andrex Scheffer (www.phpclasses.org/package/4075-PHP-Set-and-retrieve-Twitteruser-status.html ).Wie Sie am ersten Beispiel bereits erkennen können, ist der Zugriff auf die Daten deutlich einfacher als mit den Bordmitteln von PHP und cURL.

require_once( './my_twitter.php' );
$twitter = new MyTwitter('Benutzer',
'Passwort');
$Tw_stat = $twitter->
followingTimeLine();
$gesamt = count($Tw_stat);
for ( $i=0; $i < $gesamt ; $i++ ){
echo "<p>". $Tw_stat[$i]['text'] .
"</p>";
}

Nachdem die Bibliothek eingebunden ist, definieren Sie eine neue Instanz $twitter und geben dieser Ihren Benutzernamen und das zugehörige Passwort mit. In der nächsten Zeile rufen Sie die ersten 20 Zeilen Ihrer Twitter-Mitteilungen ab. Diese werden in der Variablen $Tw_stat gespeichert. Anschließend ermittelt das Programm die Gesamtanzahl der gelesenen Nachrichten und gibt diese in einer for-Schleife über den echo-Befehl aus.Wie bereits erwähnt, hat die Bibliothek ihre Stärke in der Ausgabe von Informationen aus Twitter und bietet an dieser Stelle deutlich mehr Optionen wie twitter-php. Die Funktionen von My Twitter gliedern sich in vier Funktionsbereiche:

  • Methooden rund um die Timeline und Status-Informationen
  • Methoden zum Benutzer und zu den Followers
  • Direkte Nachrichten an einen Benutzer
  • Methoden aus dem Bereich Following

Timeline und Status

My Twitter bietet Ihnen nicht weniger als vier unterschiedliche Methoden zum Zugriff auf die unterschiedlichen Timelines. Die Rückgabewerte werden, wie im obigen Beispiel beschrieben in einem Array gespeichert und können anschließend über eine Schleife oder einen direkte Zugriff verarbeitet werden.

image.jpg
Mit einfachen Mitteln fragen Sie die Ereignisse Ihrer zusammengestellten Timeline ab.
© Internet Magazin

$twitter->userTimeLine() gibt die letzten zwanzig Einträge Ihrer eigenen Status-Updates aus und $twitter->repliesLine() zeigt die korrespondierenden Antworten Ihrer Follower dazu. $twitter->followingTimeLine() erweitert dies um alle Einträge der Kanäle, die Sie verfolgen. Haben Sie recht aktive Kanäle abonniert, lohnt es sich unter Umständen mehr als 20 Einträge zu laden.Mithilfe des Parameters 2 laden Sie die zweite Seite mit den Einträgen 21 bis 40: $twitter- >followingTimeLine(2). Möchten Sie dem Gezwitscher der allgemeinen Timeline folgen, dann laden Sie diese entsprechend über $twitter->publicTimeLine().Jede Twitter-Nachricht besitzt eine eindeutige ID, über die Sie diese auch ansprechen und auslesen können. Es handelt sich dabei um einen numerischen Code, den Sie direkt unterhalb des Tags <status> nach <created_at> finden.

Mehr lesen

Chronologische Liste und Netflix-Links

Marvel-Filme- und -Serien: Das ist die richtige Reihenfolge

Neuerscheinungen in der Übersicht

Netflix: Neue Filme und Serien

Vorschau auf Film- und Serien-Highlights

Amazon Prime Video: Neuheiten

Weiter zur Startseite  

Mehr zum Thema

internet, webdesign, adobe,  Illustrator, CS6

Webdesign

Webdesign in Adobe Illustrator CS6

Adobe Illustrator wird im Webdesign immer beliebter. Wie Sie das Tool richtig einsetzen, erfahren Sie hier.

Facebook stellte die neue Suche

Facebook

Facebooks Social Graph Search

Was sind die Implikationen für Unternehmen und Endanwender bei Facebooks neuer Suche Graph Search?

Der BGH erklärt das Internet zur Lebensgrundlage.

Online-Recht

Darauf müssen Sie bei den AGB achten

Allgemeine Geschäftsbedingungen liest sich niemand gerne durch. Sie sind jedoch notwendig und äußerst sinnvoll. Worauf sie achten sollten.

Online-Urheberrecht: Unser Ratgeber bietet Tipps für das Cloud-Recht.

Online-Recht in der Cloud

Wie sieht das Urheberrecht in der Wolke aus?

Dateien werden immer häufiger in der Cloud bereitgestellt. Rechtlich ist das jedoch durchaus problematisch. Wir klären über das Urheberrecht in der…

Logistik im E-Commerce: Prozesse rund um die Logistik.

E-Commerce-Logistik

Logistik im E-Commerce

Für den Erfolg eines Online-Shops sind zahlreiche Faktoren verantwortlich. Neben Produktvielfalt und Darstellung der Waren gehört auch die Logistik.