PHPでASCIIエンコーディングをUTF8に変換する方法
ASCIIはUTF-8のサブセットであるため、ドキュメントがASCIIの場合、すでにUTF-8です。
現在のエンコーディングが純粋なASCIIであることが確実にわかっている場合、ASCIIはすでに有効なUTF-8であるため、何もする必要はありません。
ただし、UTF-8を確認するためだけに変換したい場合は、iconvを使用できます。
$string = iconv('ASCII', 'UTF-8//IGNORE', $string);
IGNOREは、一部が無効なASCIIであった場合に備えて、無効な文字を破棄します。
mb_convert_encodingを使用して、ASCIIをUTF-8に変換します。詳細情報 こちら
$string = "chárêctërs";
print(mb_detect_encoding ($string));
$string = mb_convert_encoding($string, "UTF-8");
print(mb_detect_encoding ($string));
utf8_encode()
を使用します
マニュアルページはこちらにあります http://php.net/manual/en/function.utf8-encode.php
ソフトウェアに関するJoelのこの記事も読んでください。 Unicodeが何であり、どのように機能するかについて、優れた説明を提供します。 http://www.joelonsoftware.com/articles/Unicode.html
「ASCIIはUTF-8のサブセットなので、...」-したがって、UTF-8はset? :)
言い換えると、x00からx7Fまでのcode points
で構築された文字列は、区別できないrepresentations(バイトシーケンス)in ASCII and UTF-8。そのような文字列の変換無意味です。