我有这样的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));
我应该如何改进此脚本以删除我已发布的文件消息?
答案 0 :(得分:0)
最好的方法是将已经推文的行移到另一个文件上。然后一个文件将包含所有推文行,一个文件将包含尚未发布的行。
顺便说一句,你的功能的可读性不是很好。