2012-03-29 19 views
0

我已經發送出基於從網絡形式的一些用戶輸入的HTML電子郵件,在一個點一個類它下面的iconv() - 一個出現的£跡象盈方從用戶輸入

$emailcontent=iconv("UTF-8", "ISO-8859-1//IGNORE//TRANSLIT",$emailcontent); 

我希望這會停止在所有時間出現在英鎊面前,事實證明我錯了。似乎除了英鎊符號之外,其他任何角色都顯得很好。

如果有人能指出我正確的方向,我將不勝感激。

+0

你是說它從除了英鎊之外的其他角色剝離Â,或者它什麼都不做? – Potatoswatter 2012-03-29 10:09:02

+0

每個其他角色都顯得很好,所以我認爲它必須將其從其他角色中剝離出來。 – cosmicsafari 2012-03-29 10:16:41

+0

沒有理由承擔任何事情。它可以從諸如「¿」的字符中去掉UTF-8前綴,或者它不會。如果沒有,它什麼都做? – Potatoswatter 2012-03-29 10:49:33

回答

0

適合我。如果我把我的OS X的終端窗口以ISO拉丁1個編碼,然後

$ php -r 'print(iconv("UTF-8", "ISO-8859-1//IGNORE//TRANSLIT", "£\n"));' 
£ 

按照documentation//IGNORE//TRANSLIT選項是矛盾的,雖然,你應該隨便挑一個。

+0

似乎沒有工作,即時運行PHP 5.3.6它可能不是標準? – cosmicsafari 2012-03-29 12:21:52

+0

我在5.3.4上。如果您使用上述示例進行檢查,請確保您的控制檯已設置爲ISO-8859-1編碼。默認值可能是UTF-8。 – Potatoswatter 2012-03-29 13:12:56

+0

目前我正在開發雪豹,但現場服務器是Linux(強壯的蒼鷺) – cosmicsafari 2012-03-29 17:32:35

相關問題