Jörg Reinholz: Zeichencodierung im Dokument wechseln?

Beitrag lesen

Moin!

Ja. Basierend auf der damaligen Diskussion läuft bei mir folgendes zu meiner Zufriedenheit

  # Reihenfolge ist wichtig
  # eventuell erweitern...
  $spek=array('ASCII', 'UTF-16', 'UTF-8', 'ISO-8859-15', 'ISO-8859-1'); 

  $coding = mb_detect_encoding($string, $spek, false); 

  if ( 'UTF-8' != $coding && 'ASCII' != $coding ) {
    $string = "mb_convert_encoding($string, 'UTF-8', $coding);
  }

Könntest Du bitte noch ein paar Worte darüber verlieren, warum diese Reihenfolge funktioniert,

Das hat Dedlfix schon sehr ausführlich getan.

und warum Du das strict-Flag nicht benutzen willst bei der Erkennung?

Der strict-Flag steht zum einen per default auf false. Zum anderen ist es aus Gründen der Anwendung (ich ruble die nicht immer sauberen Ausgaben von whois um / siehe "Telefónica Germany GmbH & Co. OHG") im konkreten Fall besser, auch im Fehlerfall (UTF-8 ist nicht valide) irgendein (falsches) Ergebnis zu bekommen als gar keins.

Jörg Reinholz