Hi,
Grund: der Frontend-Entwickler ("Designer") kann die Problematik nicht übersehen.
Das ist der KnaxPointt!!!
So nun: Die Funktion gehört ins Programm ;)
Das wichtigste Argument hat dedlfix bereits genannt: der Entwickler des Controllers (wenn man von MVC ausgeht) weiß gar nicht, was für einen Kontext das Template braucht: ist es JavaScript-Kontext, HTML-Kontext, …
Die Funktion gehört daher ins Template. Die meisten mir bekannten Templates machen dies automatisch im Hintergrund, in dem sie standardmäßig nach HTML-escapen, aber bei Bedarf auch die Möglichkeit vorsehen, anders escapen zu können.
Bis die Tage,
Matti