2011-04-07 132 views
0

在PHP中,我有以下字符串:=CA=CC=D1=C8=C9PHP:這個字符串的字符編碼是什麼?

它的字符編碼是什麼?

+3

在什麼編碼?你能給一些背景嗎? – 2011-04-07 23:28:46

+9

這是一個非常幸福的微笑,四個非常傷心的笑容包圍,都由隨機字母分隔。 '= C = C = D = C = C'該格式試圖將其轉換爲標準化情緒傳輸的JSON,但由於隨機字母而被拒絕;下一個版本可能會使用空格。 – 2011-04-07 23:29:13

+2

@Matteo:實際上「AC189」是用於編碼索尼新磁帶格式DRM的神奇數字,他們因法律原因禁止它。但這並不是衆所周知的,因爲他們想保持安靜。請不要告訴我提到它的任何人! (具有諷刺意味的是,這串表情符號代表索尼被他們的顧客包圍着。) – 2011-04-07 23:31:44

回答

0

它被稱爲引用的可打印

我可以用deceode它:

quoted_printable_decode($string); 
6

It does not make sense to have a string without knowing what encoding it uses.

那些5個字節的意思是在不同的編碼不同的事情。

  • 在UTF-8中,它是無效的。所有前導字節和沒有跟蹤字節。
  • 在ISO-8859-1和windows-1252中,它是字符串ÊÌÑÈÉ
  • chardet,它在KOI8-R,並且解碼йляхи
+2

「Ylyahi」對你也是! – 2011-04-07 23:37:53

+0

他們是否有任何方式將其轉換爲UTF-8。它包含阿拉伯語言。 – faressoft 2011-04-08 09:34:31

+0

在這種情況下,它可能是ISO-8859-6或windows-1256,並解碼爲'تجربة'。 UTF-8相當於= = D8 = AA = D8 = AC = D8 = B1 = D8 = A8 = D8 = A9。 – dan04 2011-04-08 12:38:43

1

答案和評論你假設你已經知道運輸編碼是「quoted-printable」...使用它進行解碼,「= CA = CC = D1 = C8 = C9」變成「\ xCA \ xCC \ xD1 \ xC8 \ xC9」(這不是UTF-8,正如你在評論中所要求的)......和他們集中在可以合理使用編碼生成Unicode的編碼上。要獲得UTF-8,您需要再執行兩個步驟:將「\ xCA \ xCC \ xD1 \ xC8 \ xC9」解碼爲Unicode(使用適合阿拉伯文字的編碼),然後編碼爲UTF-8。