Hi!
Die Frage ist ganz konkret wie man den Zeichensatz des unbearbeiteten Strings definieren kann.
Gar nicht. PHP arbeitet nicht mit Zeichensätzen und an ganz wenigen Stellen mit konkreten Zeichenkodierungen. Wo das Manual nicht konkretes dazuschreibt, basiert alles auf Bytes.
Für dein Beispiel im OP: Schau dir an, wie UTF-8 definiert ist, welche Bytewerte verwendet werden, besonders den Unterschied zwischen ASCII- und anderen Zeichen.
Lo!