2009-11-13 30 views
1

我有一個混合拉丁和阿拉伯字符的PHP頁面。字符集聲明標記位於html代碼 阿拉伯字符在着陸時損壞,罰款後更新 - UTF8

並且該文件被保存爲UTF-8。所有的文本是靜態的,並在PHP文件(不是來自數據庫或外部來源)

當我瀏覽到該網站時,一些頁面隨機在IE和FF中損壞並顯示所有問號。刷新頁面後,文本顯示正常,雖然...我一直在用阿拉伯語和希伯來語很長一段時間,這是我第一次遇到這個問題。任何人都可以想到一個原因嗎?

Chrome是永嘉...

+0

手動更改編碼時會發生什麼 - 使用視圖 - >字符編碼? – Matijs 2009-11-13 22:03:23

+0

另外,你確定你的瀏覽器正在緩存頁面嗎? – Shreef 2009-11-13 22:18:53

+0

@ Matjis視圖 - >字符編碼已經顯示正確的編碼 - utf-8。這就是困擾我的問題,因爲通常這個問題是由於丟失了字符集聲明而造成的,並且瀏覽器猜測出了一個缺口。在我的情況下,瀏覽器設置爲正確的編碼,但頁面顯示全部????????。 @Shreef - 是的,我確信它不是由於緩存。如果我不斷刷新頁面,它每隔一段時間就會回到問號... – eakkas 2009-11-13 22:25:54

回答

2

原來在元描述之前的腳本引用導致了問題。我將 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> 作爲開頭標籤之後的第一個項目,這不再是問題。感謝所有的評論..

PS我不是那個誰編碼這個網頁,並只在本地化它,這就是爲什麼我甚至沒有想到後腳本的元標記甚至會有所作爲。 ..

0

嘗試發送適當的頭,像這樣:

header("Content-Type: text/xml; charset=utf-8");