Tach!
Ich vermute, dass es mit dem Parameter Charset der Funktion
htmlspecialchars
zu tun hat. Unter PHP 5.4 und 5.5 wird standardmäßig UTF-8 verwendet, frühere PHP-Versionen verwenden ISO-8859-1, ab PHP 5.6 wird standardmäßig die mit default_charset ermittelte Kodierung verwendet.
Irrelevant. Die von htmlspecialchars() betroffenen Zeichen sind alle im ASCII-Bereich. Das ist nur bei irgendwelchen asiatischen Kodierungen wichtig, die die "ASCII-Bytes" auch anderweitig wiederverwenden.
dedlfix.