Deswegen (und wegen absichtlichem Missbrauch dieses Programmierfehlers)
... sollen Variableninhalte dem Ausgabemedium entsprechend maskiert werden. Dieses Prinzip gilt auch für jegliche Ausgabe.
in Richtung HTML: htmlspecialchars()
für eine URL: urlencode()
usw. usf.
So hätte es sein sollen. :-)