从文件发布到twitter

时间:2010-12-02 12:28:06

标签: php twitter

我有这样的php脚本从文件发布到twitter:

    function win2utf($s)  {  
       for($i=0, $m=strlen($s); $i<$m; $i++) { 
               $c=ord($s[$i]); 
               if ($c<=127) {$t.=chr($c); continue; } 
               if ($c>=192 && $c<=207)    {$t.=chr(208).chr($c-48); continue; } 
               if ($c>=208 && $c<=239) {$t.=chr(208).chr($c-48); continue; } 
               if ($c>=240 && $c<=255) {$t.=chr(209).chr($c-112); continue; }

               if ($c==184) { $t.=chr(209).chr(209); continue; };
               if ($c==168) { $t.=chr(208).chr(129);  continue; };
        }
   return $t;
} 

require_once 'options.php';     
require_once 'twitteroauth/twitteroauth.php'; 
set_time_limit(0);  
$connection = new TwitterOAuth($options['CONSUMER_KEY'], $options['CONSUMER_SECRET'], $options['OAUTH_TOKEN'], $options['OAUTH_SECRET']); 
$connection->format = 'xml';
$lines = file(ROOT.'inc/posts.txt');
$index = mt_rand(0, count($lines)-1); 
$status  = win2utf($lines[$index]); 
$connection->post('statuses/update',   array('status'=>$status));

我应该如何改进此脚本以删除我已发布的文件消息?

1 个答案:

答案 0 :(得分:0)

最好的方法是将已经推文的行移到另一个文件上。然后一个文件将包含所有推文行,一个文件将包含尚未发布的行。

顺便说一句,你的功能的可读性不是很好。