file_get_contents() bricht UTF-8-Zeichen auf

Die Funktion file_get_contents() in PHP wird verwendet, um den Inhalt einer Datei in einen String zu lesen. Es ist jedoch bekannt, dass sie Probleme verursacht, wenn Dateien mit UTF-8-Zeichen gelesen werden. Das liegt daran, dass die Funktion die Datei als binäre Daten liest und die UTF-8-Codierung nicht automatisch handhabt. Um dieses Problem zu beheben, können Sie die Funktion utf8_encode() verwenden, um die binären Daten in einen UTF-8-codierten String zu konvertieren, bevor Sie ihn verwenden. Alternativ können Sie mb_convert_encoding() verwenden, um den Inhalt der Datei in die gewünschte Kodierung zu konvertieren.

<?php

$contents = file_get_contents('file.txt');
echo $contents = utf8_encode($contents);

oder

<?php

$contents = file_get_contents('file.txt');
echo $contents = mb_convert_encoding($contents, 'UTF-8', 'auto');