Hallo Gunnar,
substr() und andere ähnliche PHP-Funktionen arbeiten byteorientiert. Sie sind für UTF-8 nicht oder nur sehr bedingt geeignet.
?? Was wäre denn Bedingungen, unter denen sie geeignet wären?
Wenn man sie dafür benutzt, wofür sie designed wurden: den byteorientierten Zugriff auf den Speicher.
Da kann es kontraproduktiv sein, wenn man plötzlich nicht mehr weiß, wie viele Bytes jetzt betroffen sind. Da PHP keine eigentlichen Memory-Funktionen hat, nur so verschwurbelte Hilfsfunktionen (pack() + unpack()), sind die byteorientierten Stringfunktionen oft der einzige Weg, (fremde) Dateien mit festem Satzaufbau sauber zu lesen.
LG RR on the Road again