Tach!
Man kann Kodierungen grundsätzlich nicht erkennen. Es gibt lediglich einige Indizien, anhand derer man eine Annahme zu einer Kodierung treffen kann. Bei UTF-8 geht das, wenn Zeichen oberhalb von ASCII im Text vorkommen. Die müssen in der korrekten Byte-Sequenz kodiert sein.
Danke für die umfangreichen Ausführungen, ein Frage bleibt jedoch. Gibt es in PHP keine verlässliche Funktion, die anhand der Indizien das ebenso gut erkennt wie ein Editor? Weil, so wie ich es probiert habe, offensichtlich nicht.
Siehe obiges Zitat. Für Ein-Byte-Kodierungen gibt es prinzipbedingt keine Indizien. Man kann lediglich den Text analysieren, ob der sinnvoll ist.
Man kann auch nicht UTF-8 und ISO-8859-1 und ASCII voneinander unterscheiden, wenn der Text lediglich ASCII-Zeichen enthält. Er ist dann zu allen drei Kodierungen kompatibel.
dedlfix.