2010-03-22 77 views
1

我正在寫一個函數將MS Word樣式的文本轉換爲Adobe InDesign格式的文本(它使用一種XML來指示樣式)。將文本粘貼到TinyMCE富文本編輯器中,然後將HTML格式的代碼發送到php函數。AJAX請求中的Microsoft Word字符的編碼問題

我試過這個功能,一旦達到我的轉換代碼清理代碼:

$text = iconv("windows-1250", "UTF-8", $html); 

當我使用任何「特殊」之類的人物,事情出錯。英鎊符號,é(或任何其他口音),以及各種'捲曲'撇號/引號似乎打破了事情。例如,如果我嘗試轉換£符號,代碼將返回\u0141,但當函數返回時,屏幕上會顯示Ł符號。

有誰知道我能做些什麼來防止Word的怪異人物破壞我所做的一切嗎?

回答

2

我似乎已經解決了這個問題。我使用的是escape()來傳遞值,但用encodeURIComponent()取而代之(並在我的php代碼中刪除了iconv()調用),這似乎修復了它。