2011-09-20 35 views
0

我現在建立的是我從中文RSS網站的RSS feed中抓取的,但是一旦我回應出來是空白的,我的代碼就工作在英文RSS上,我嘗試了很多解碼,iconv,header(「Content-Type:text/html; charset = utf-8「);,但仍然不能在我的屏幕上顯示任何中文單詞。在php中如何顯示漢字?

這裏是我的編碼:

header("Content-Type: text/html; charset=utf-8"); 
function getrssfeed($feed_url){  
$Current = date("Y-m-d" ,strtotime("now")); 
$content = file_get_contents($feed_url);  
$xml = new SimpleXmlElement($content); 
$body = ""; 
    foreach($xml->channel->item as $entry){  
     $body .= get_html_translation_table(htmlspecialchars_decode(strip_tags($Current ." ". $entry->description))) . "\n\n";  
     //$result = iconv('UTF-8', 'ISO-8859-1//TRANSLIT//IGNORE', $body); 
     $i++;  
     if($i==5) { 
      break;  
     }  
    } 
echo $body; 
} 

getrssFeed( 「http://news.baidu.com/n?cmd=1 &類= enternews & TN = RSS」);

你能幫我解決我的問題嗎?

謝謝

+0

你甚至不喜歡??????????問題標記 –

+0

不,我只是空白頁 – user941885

+0

這可能有助於http://stackoverflow.com/questions/2899274/php-simplexml-why-does-simplexml-load-string-fail-to-parse-google-weather- – skyuzo

回答

1

在你的HTML頭把這個

<meta http-equiv="Content-Type" content="text/html;charset=utf-8" ></meta> 
+0

我測試過,仍然是同樣的事情發生,顯示白色的空白頁面,如果我更改rss鏈接到英語,它的工作 – user941885

0

可能是你可以使用此功能與

mb_convert_encoding

,但在同一時間,你應該注意本地文件字符集必須是utf-8或g你需要B2312

1

兩件事要做

  1. 設置文檔類型或標題爲

內容= 「text/html的;字符集= UTF-8」

  1. 將這些用戶漢字保存在數據庫中,並使用字段整理爲utf8_general_ci