Bonjour,
J'aurai besoin de votre aide sur un script php permettant de récupérer les X derniers statuts de mon compte Twitter. Merci d'avance pour votre aide.
Actuellement, le code récupère X statuts du compte X, en préservant l'html et l'encodage des accents. Le code est personnalisable à volonté (code à ajouter avant/après chaque tweet, et avant/après le bloc de tous les tweets). Et tout fonctionne à merveille :
Maintenant, j'aimerais ajouter devant chaque tweets l'heure de celui-ci, à la façon "il y a 5 minutes". J'ai en partie réussi, sauf que l'heure est identique sur chaque tweet, au lieu de prendre l'heure de chacun d'entre eux :
Je sais/suppose que la partie allant de $xml=new SimpleXMLElement jusqu'au if de $time_diff devrait se placer dans la boucle, mais mes différents essais ne m'ont renvoyer que des messages d'erreurs.
Sauriez-vous comment faire ?
Merci encore pour votre aide.
Daniel.
Modifié par Confridin (27 Jul 2010 - 13:46)
J'aurai besoin de votre aide sur un script php permettant de récupérer les X derniers statuts de mon compte Twitter. Merci d'avance pour votre aide.
Actuellement, le code récupère X statuts du compte X, en préservant l'html et l'encodage des accents. Le code est personnalisable à volonté (code à ajouter avant/après chaque tweet, et avant/après le bloc de tous les tweets). Et tout fonctionne à merveille :
<?php $username = "rochdaniel";
$limit = "4";
$prefix = "";
$suffix = "";
$tweetprefix = "<li>";
$tweetsuffix = "</li>";
$feed = "http://search.twitter.com/search.atom?q=from:" . $username . "&rpp=" . $limit;
$ch = curl_init();
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_URL, $feed);
$twitterFeed = curl_exec($ch);
curl_close($ch);
$twitterFeed = str_replace("<", "<", $twitterFeed);
$twitterFeed = str_replace(">", ">", $twitterFeed);
$twitterFeed = str_replace(""", "\"", $twitterFeed);
$twitterFeed = str_replace("&apos;", "'", $twitterFeed);
$twitterFeed = str_replace("&", "&", $twitterFeed);
$clean = explode("<content type=\"html\">", $twitterFeed);
$amount = count($clean) - 1;
echo $prefix;
for ($i = 1; $i <= $amount; $i++) {
$cleaner = explode("</content>", $clean[$i]);
echo $tweetprefix;
echo $cleaner[0];
echo $tweetsuffix;}
echo $suffix;?>
Maintenant, j'aimerais ajouter devant chaque tweets l'heure de celui-ci, à la façon "il y a 5 minutes". J'ai en partie réussi, sauf que l'heure est identique sur chaque tweet, au lieu de prendre l'heure de chacun d'entre eux :
<?php $username = "rochdaniel";
$limit = "4";
$prefix = "";
$suffix = "";
$tweetprefix = "<li>";
$tweetsuffix = "</li>";
$feed = "http://search.twitter.com/search.atom?q=from:" . $username . "&rpp=" . $limit;
$ch = curl_init();
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_URL, $feed);
$twitterFeed = curl_exec($ch);
curl_close($ch);
$xml = new SimpleXMLElement($twitterFeed);
$date = $xml->entry->published;
$mydate = strtotime($date);
$time_diff = time() - $mydate;
if ( $time_diff > 0 )$display = sprintf( __('%s ago'), human_time_diff( $mydate ) );
$twitterFeed = str_replace("<", "<", $twitterFeed);
$twitterFeed = str_replace(">", ">", $twitterFeed);
$twitterFeed = str_replace(""", "\"", $twitterFeed);
$twitterFeed = str_replace("&apos;", "'", $twitterFeed);
$twitterFeed = str_replace("&", "&", $twitterFeed);
$clean = explode("<content type=\"html\">", $twitterFeed);
$amount = count($clean) - 1;
echo $prefix;
for ($i = 1; $i <= $amount; $i++) {
$cleaner = explode("</content>", $clean[$i]);
echo $tweetprefix;
echo $display.' : ';
echo $cleaner[0];
echo $tweetsuffix;}
echo $suffix;?>
Je sais/suppose que la partie allant de $xml=new SimpleXMLElement jusqu'au if de $time_diff devrait se placer dans la boucle, mais mes différents essais ne m'ont renvoyer que des messages d'erreurs.
Sauriez-vous comment faire ?
Merci encore pour votre aide.
Daniel.
Modifié par Confridin (27 Jul 2010 - 13:46)