Tach!
So geht es auch:
mail(trim($to), utf8_decode($subject), $text, $headers); }
Nein, das geht nur zufällig, und ist falsch. 7-Bit wäre richtig, Umlaute sind Nicht-ASCII und damit unter ISO-8859-1 8-Bit.
So allerdings nicht:
mail(trim($to), mb_convert_encoding($subject, "ASCII"), $text, $headers);
Wie gesagt, Umlaute gibt es in ASCII nicht. Sie gehen dir bei einer Umwandlung nach ASCII verloren. Außerdem muss bei allem was mit mb_* gemacht wird, mit mb_internal_encoding() die derzeit verwendete Kodierung eingestellt werden, sonst ist vielleicht durch einen Parameter einer Funktion das Wohin definiert, aber nicht das Woher.
dedlfix.