くうはく〜?

そこに、strip_tagsでタグを除去し、trimして左右の空白を取り除くことで、純粋な発言内容だけを取り出してきている、というわけです。
http://d.hatena.ne.jp/sotarok/20080725/php_study_34_simplexml_code

twitterは試しのポストをしたところ、ポストの際の前後にある半角スペースは自動的に取り除いて反映されてしまうようです。つまり、照れ隠し的な文章として間をおいた後の文言を書き記そうとして

                @sotarok すきです!だいすき!

と、もし半角で行間というか、間を入れてポストしたつもりでも投稿者の意に反して
半角スペースは取り除かれ

@sotarok すきです!だいすき!phpspotが!

などとフィルタリングされてしまうわけです。そのため純粋な思いの発言内容は投稿できない→純粋な発言内容は抽出できないというわけですが、前述の通り左右の空白は取りのぞかれてるのにtrim()をなぜするのかとなります。

twitter/homeのhtmlを開き、//span[@class='entry-content']に該当する箇所を見ると、発言前後のspanタグの箇所は改行され、タブが挿入され、ポストの前に半角スペース2つが挿入されているようです。

なので例示されているコードは

foreach ($xml->xpath("//span[@class='entry-content']") as $val) {
        echo substr(str_replace(array(chr(9), chr(10), chr(13)), '', strip_tags($val->asXML())), 2) ."\n";
}

と言った具合に「左右の空白」ではなく改行、タブをreplaceし、投稿左の半角スペース2つによる空白を取り除くっていうのがtrim()してる本来の趣旨じゃないでしょうか?

「もっとうまい方法」がスクレイプを指してるならば、Diggin_Scraperのソースを…じゃなくて、HTMLScraping Class+tidyで徹底的に整形するってのがふつうのやり方で、@による抑止なしでもSimpleXMLElementにてロードしてる箇所はエラーがでないかと。