Php twitter durum script İlavesi

2 Cevap php

Benim twitter durumunu görüntülemek için aşağıdaki komut dosyası kullanıyorum ama bir @ kullanıcı adı ile başlamak tweets göstermek değil seçeneği eklemek istiyorum. Ben adımı görüntüler olmayacak kadar bunu yaptık, ama tweets başka bir kullanıcıya cevap göstermek için değil istiyorum.

Teşekkürler

$doc = new DOMDocument();
# load the RSS
if($doc->load('twitterurlrss')) {
    # number of tweets to display.  20 is the maximum $max_tweets = 3;    
    $i = 1;
    foreach($doc->getElementsByTagName('item') as $node) {
        # fetch the title from the RSS feed
        $tweet = $node->getElementsByTagName('title')->item(0)->nodeValue;
        $date = $node->getElementsByTagName('pubDate')->item(0)->nodeValue;
        $link = $node->getElementsByTagName('link')->item(0)->nodeValue;
        # the title of each tweet starts with "username: " which I want to remove
        $tweet = substr($tweet, stripos($tweet, ':') + 1);
        $date = date("dS F Y", strtotime($date));  
        # Turn URLs into links
        $tweet = preg_replace('@(https?://([-\w\.]+)+(:\d+)?(/([\w/_\.]*(\?\S+)?)?)?)@',  '<a href="$1">$1</a>', $tweet);
        # Turn @replies into links
        $tweet = preg_replace("/@([0-9a-zA-Z]+)/", "<a href=\"twitterurl/$1\">@$1</a>", $tweet);
        # Turn & into &amp;
        $tweet = preg_replace('@&@',  '&amp;', $tweet);
        if($i%2 == 0) {
            echo "<div class=\"three-col center\"><p>" . $tweet . "<br /><span class=\"quiet\"><ahref=\"" . $link . "\">". $date . "</a></span></p></div>\n";
        } else {
            echo "<div class=\"three-col\"><p>" . $tweet . "<br /><span class=\"quiet\"><ahref=\"" . $link . "\">" . $date . "</a></span></p></div>\n";
        }
        if($i++ >= $max_tweets)
            break;
    }
}

(Ben daha sonra bir tane göndermek için mümkün gibi köprüleri gizlemeye denedim)

2 Cevap

Eğer böyle bir durum eklemek istediğiniz gibi geliyor:

if(preg_match('/^\s*@([0-9a-zA-Z]+)/', $tweet))
    continue;

sonra $tweet = substr($tweet, stripos($tweet, ':') + 1);.

if(preg_match('/(|\s)@([0-9a-zA-Z]{3,})/', $tweet))
    continue;

Daha tam bir maç. Diğer bazı durumlarda hatalı maç olacak.