我正在使用 https://api.twitter.com/1.1/statuses/user_timeline.json Twitter api从某个特定帐户获取推文,并且除了使用其他语言而非英语推文外,所有推文都正确。
用于向Twitter发出请求的Php代码如下:
$ch = curl_init();
curl_setopt($ch,CURLOPT_POST,1);
curl_setopt($ch,CURLOPT_POSTFIELDS,"grant_type=client_credentials");
curl_setopt($ch,CURLOPT_URL,$url);
curl_setopt($ch,CURLOPT_RETURNTRANSFER,true);
curl_setopt($ch,CURLOPT_CONNECTTIMEOUT, 5);
curl_setopt($ch,CURLOPT_USERAGENT, "Tweet Fetcher PHP 0.0.1");
curl_setopt($ch,CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($ch,CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch,CURLOPT_SSL_VERIFYHOST,2);
curl_setopt($ch,CURLOPT_HTTPHEADER,array('Authorization: '.$authType.'
'.$authValue,'Content-Type: application/x-www-form-urlencoded;charset=UTF-8'));
$result = curl_exec($ch);
curl_close($ch);
获取推文结果
मेहनत और मोबाइल ने चमकाई
如何在正确的字符集中获取此字符串?
更新代码:
$tweet = json_decode($result);
但结果相同
答案 0 :(得分:0)
让我们来看看你得到的API响应。
{
"created_at": "Wed Jan 08 10:02:49 +0000 2014",
"id": 420858117375553540,
"id_str": "420858117375553537",
"text": "पंजाब ड्रग्स गिरोह में मंत्री बिक्रम मजीथीआ का नाम सामने आया। श्री राहुल गांधी ने इस बारे में बहुत पहले बताया था। http://t.co/TQHGZxALQU",
"source": "web",
"truncated": false,
"in_reply_to_status_id": null,
...etc...
那里几乎没有错。 “text”是UTF-8,将由PHP正确处理。
可能发生的事情是您没有在页面上设置元标记以显示UTF-8。它可能设置为Windows Charset。
在页面顶部,使用类似
的内容header('Content-Type: text/html; charset=utf-8');
强制输出为正确的编码。