2017-03-04 134 views
1

這是我簡單的代碼:PHP的fwrite和Unicode代碼問題

$filename = "save1.txt"; 
    $f=fopen($filename,"a"); 
    # Now UTF-8 - Add byte order mark 
    fwrite($f, pack("CCC",0xef,0xbb,0xbf)); 
    fwrite($f,$content); 
    fclose($f); 

語言輸入文字textarea的:

神祕 戲法 弧形拱 考古 考古 考古 世界它的痕跡考古學家 科學 PA [R 失活

保存的文本文本文件中: enter image description here

我的要求是保存相同的文字文本文件中

+1

您可能需要'html_entity_decode($內容)'爲什麼你假設源編碼是第一 – apokryfos

+0

html_entity_decode沒有解決不了的問題 –

回答

0

您最轉換後的字符串:

$str = mb_convert_encoding($content, 'UTF-8'); 
+1

ISO-8859-2? –

+0

@SanderBackus我改變要求。 –

0

從你的文字,它的UCS-2,它也可以被directily使用HTML。

您可以使用它來反其爲UTF-8:

iconv('UCS-2' , 'UTF-8' , $c); 
+0

謝謝你的幫助。不過比較遺憾的,它並沒有解決問題。 –

+0

什麼是你的問題? –

+0

用iconv輸出是:☣ㄵ㤴㬦⌱㔷㔻☣ㄶ〵㬦⌱㔹〻☣ㄵ㜷㬠☣ㄵ㠸㬦⌱㔹㌻☣ㄶ〸㬦⌱㔸㐻☣ㄵ㜷㬠☣ㄶ〵㬦⌱㘰㈻☣ ㄶ〸㬦⌱㔸㜻...⌱㔷㔻☣ㄶ〴㬦⌱㔹㈻☣ㄶ〷㬦⌱㔸㔻...⌱㘰㈻☣ㄶ〸㬦⌱㔸㜻...⌱㔷㔻☣ㄶ〴㬦⌱㔷ㄻ☣ㄵ㜹㬦⌱㔸㔻☣ㄶ㄰㬦⌱㔷㜻...⌱㔷ㄻ☣ㄵ㜹㬦⌱㔸㔻☣ㄶ㄰㬠☣ㄵ㜰㬦⌱㔷㤻☣ㄵ㜵㬦⌱㔸㔻☣ㄶ㄰㬦⌱㔷㔻...⌱㔹㌻ ☣ㄵ㜵㬦⌱㘰㐻☣ㄶ〵㬠☣ㄵ㜵㬦⌱㔷㤻☣ㄵ㜵㬦⌱㔸㔻...⌱㔹㌻☣ㄶ〴㬦⌱㘰㔻☣ㄵ㜵㬦⌱㔶㤻...⌱㔷㔻☣ㄶ〴㬦⌱㔷〻☣ㄵ㜹㬦⌱㔷㔻☣ㄵ㠵㬠☣ㄵ㤳㬦⌱㘰㐻☣ㄶ〵㬠☣ㄵ㜵㬦⌱㘰㐻☣ㄵ㜰㬦⌱㔷㤻☣ㄵ㜵㬦⌱㔸㔻...⌱㘰㔻☣ㄶ〵㬦⌱㔷㔻☣ㄵ㜸㬍 –