如何ASCII編碼轉換爲UTF8在PHP轉換ASCII到UTF8編碼
回答
ASCII是UTF-8的一個子集,因此,如果一個文件是ASCII那麼它已經是UTF8。
使用 函數utf8_encode()
手冊頁可以在這裏找到http://php.net/manual/en/function.utf8-encode.php
還可以閱讀這篇文章,從喬爾的軟件。它提供了一個很好的解釋,說明什麼是Unicode以及它是如何工作的。 http://www.joelonsoftware.com/articles/Unicode.html
utf8_encode被設計爲將latin-1編碼爲utf-8。僅適用於latin-1(即ISO-8859-1)。 – Dmitri 2011-02-13 14:50:36
如果您確定您當前的編碼是純ASCII,那麼您不必執行任何操作,因爲ASCII已經是有效的UTF-8。
但是,如果你還是要轉換,只是爲了確保它的UTF-8,那麼你可以使用的iconv
$string = iconv('ASCII', 'UTF-8//IGNORE', $string);
的忽略將放棄任何無效字符,以防萬一有些人沒有有效的ASCII。
我一直把「IGNORE」理解爲自動/隱含錯誤。 – tchrist 2011-02-13 19:22:31
「ASCII是UTF-8的子集,所以...」 - 所以UTF-8是集合? :)
換句話說:任何字符串code points
從X00建立到0x7F部分具有ASCII和UTF-8沒有區別表示(字節序列)。轉換這樣的字符串是毫無意義的。
這裏的關鍵短語是「從x00到x7F的代碼點」。如果你的「ASCII」代碼點從x10到xFF,那麼你需要做更多的工作。 – Azeroth2b 2017-03-29 14:29:10
使用mb_convert_encoding將ASCII轉換爲UTF-8。更多信息here
$string = "chárêctërs";
print(mb_detect_encoding ($string));
$string = mb_convert_encoding($string, "UTF-8");
print(mb_detect_encoding ($string));
用iconv看起來像最好的解決辦法,但我我來說,我必須注意形成這樣的功能:「檢測到輸入字符串非法字符中」(不igonore)。 我用2個函數來處理ASCII字符串將其轉換爲ASCII碼數組,然後連載:謹慎
public static function ToAscii($string) {
$strlen = strlen($string);
$charCode = array();
for ($i = 0; $i < $strlen; $i++) {
$charCode[] = ord(substr($string, $i, 1));
}
$result = json_encode($charCode);
return $result;
}
public static function fromAscii($string) {
$charCode = json_decode($string);
$result = '';
foreach ($charCode as $code) {
$result .= chr($code);
};
return $result;
}
- 1. 從UTF8到ASCII的轉換
- 2. Apache編碼ascii到utf8
- 3. Python將html ascii編碼的文本轉換爲utf8
- 4. ASCII碼轉換
- 5. 無法從UTF8轉換爲ASCII
- 6. 轉換ASCII JSON爲utf8在python
- 7. 將擴展ascii轉換爲utf8
- 8. 從UTF8轉換爲Java中的ASCII
- 9. 轉換重音UTF8編碼使用PHP
- 10. iPhone - 從WindowsCP1251轉換NSString編碼爲UTF8
- 11. 無法轉換UTF8編碼HttpResponseMessage
- 12. 解壓UTF8到ASCII
- 13. 如何將屬性值從UTF8轉換到ASCII螞蟻
- 14. VB.NET轉換的Unicode 8(UTF8)到普通美國ASCII
- 15. VBA:Unicode到ASCII轉換?
- 16. 將utf8代碼點字符串轉換爲utf8 <U+0161>轉換爲utf8
- 17. 轉換編碼在PHP中不轉換ASCII和UTF-8之間
- 18. 百分比編碼UTF-8到Ascii(8位)轉換
- 19. LATIN1到UTF8轉換問題
- 20. python-scrapinghub,ascii/utf8?
- 21. UTF8轉換
- 22. 將ASCII編碼轉換爲它的ASCII字符代碼 - C(不打印!)
- 23. C++ UTF8編碼
- 24. utf8和編碼
- 25. C#UTF8編碼
- 26. UTF8編碼含+
- 27. UTF8編碼/€
- 28. 從ASCII到NetCDF的轉換
- 29. PHP UTF-16到ASCII轉換
- 30. 如何將utf8字符串轉換爲ascii字符串?
字,如果ASCII「伸長」 ASCII,那麼你可能會遇到的問題。 https://en.wikipedia.org/wiki/Extended_ASCII – Azeroth2b 2017-03-29 14:26:48