我正在构建一个与 Twitter API 交互的应用程序。
到目前为止,我的代码正确处理了响应,并且我对与搜索 API 交互的方式感到满意。然而,当谈到来自 Twitter API 响应的实际内容时,我被困住了。
现在,我使用 atom 提要搜索带有特定标签的推文,即
$url = 'http://search.twitter.com/search.atom?q='.urlencode($hash_tag) ;
$ch = curl_init($url);
curl_setopt ($ch, CURLOPT_RETURNTRANSFER, TRUE);
$xml = curl_exec ($ch);
curl_close ($ch);
$twelement = new SimpleXMLElement($xml);
echo "<pre>";
foreach ($twelement->entry as $entry) {
echo($entry->author->name);
echo '<br />';
echo mb_detect_encoding($entry->author->name);
echo '<br />';
我一直在尝试不同的 php 函数来解码/转换为正确的字符编码,但无论我做什么,我总是得到错误的输出。
我从这段代码的输出是:(为隐私划掉)
xxxxxx (xxxxx xxxxxxx)
ASCII
xxxx_xxxxx (Chinny ♥_♥)
UTF-8
kunlemyk ((˘̯˘ ) hardekhunley™)
UTF-8
xxxx_xxxxx (♥ify okwuosa♥)
UTF-8
xxx_xxxx (Call me DRO)
ASCII
为什么有些 ASCII 和一些 UTF-8?我怎样才能确保它们是一致的。我可以将它们转换为ascii吗?我很迷失在这里。我多年来一直坚持这一点,非常感谢这里的一些帮助。
问候,
安德鲁