Ben bir "Tweet girişken" uygulama için her iki dakikada bir çalışan bir komut dosyası var. Özetle bu Facebook üzerine tweet'leri koyar. Her şimdi ve sonra hıçkırık ve benim hata kontrolü rağmen, sürekli olarak her iki dakikada bir (o döngü bir cron işi olarak yürütülüyor) eski tweet'leri reposts. Ben teoride benim burada ne oluyor belirlemenize yardımcı olacak bir Log.txt var, ama sorun iş çalıştıran her zaman için yazılmaktadır değildir. İşte kod:
<?php
$start_time = microtime();
require_once //a library and config
$facebook = new Facebook($api_key, $secret);
get_db_conn(); //returns $conn
$hold_me = mysql_fetch_array(mysql_query("SELECT * FROM `stats`"));
$last_id_posted = $hold_me[0]; //the status # of the most recently posted tweet
$me = "mytwittername";
$ch = curl_init("http://twitter.com/statuses/friends_timeline.xml?since_id=$last_id_posted");
curl_setopt($ch, CURLOPT_USERPWD, $me.":".$pw);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$xs = curl_exec($ch);
$data = new SimpleXMLElement($xs);
$latest_tweet_id = $last_id_posted;
$uid = get_uid(); //returns an array of facebookID->twittername
$user_count = count($uid);
curl_close($ch);
$total_tweets = 0;
$posted_tweets = 0;
foreach ($data->status as $tweet) {
$name = strtolower($tweet->user->screen_name);
if (array_key_exists($name, $uid)) {
$total_tweets += 1;
// $name = Twitter Name
$message = $tweet->text;
$fbid = $uid[$name];
theposting($name,$message,$fbid); //posts tweet to facebook
$this_id = $tweet->id;
if ($this_id > $latest_tweet_id) {
$latest_tweet_id = $this_id;
}
}
}
mysql_query("UPDATE stats SET lasttweet='$latest_tweet_id'");
commit_log(); //logs to a txt file how many tweets posted, how many users, execution duration, and time of execution
?>
Yani teoride günlük bir dize "# 3326415954 yana tüm çağrıldı. # 3526415953 Güncelleme Ağustos 2009 10:41:32 Pazartesi 24.. 8 kullanıcıları. 0,086057 milisaniye sürdü. 20. tweets arasından 14 gönderildi." çizgiler. Bazen olsa da, bir anda iki veya üç saat atlayın ve aynı tweet birden fazla kopya ile bu süre içinde o olacak "spam" insanların facebook sayfaları. Benim kod kırma ne olabileceğini söyleyemem, ama benim şüphe twitter kötü XML. Tüm bu benim ucunda nispeten düşük trafik var, o yüzden benim sunucu falan yüklenme ediyorum şüpheliyim. Log.txt şu anda 50kb olduğunu ve onu yavaşlatan büyük bir dosya değil bu yüzden son, ~ 35kb at "kırdı" ... Herhangi bir düşünce mutluluk duyacağız!