Edit report at https://bugs.php.net/bug.php?id=62574&edit=1
ID: 62574 User updated by: thbley at gmail dot com Reported by: thbley at gmail dot com Summary: New operator for htmlspecialchars Status: Open Type: Feature/Change Request Package: *General Issues PHP Version: Irrelevant Block user comment: N Private report: N New Comment: So we have these use cases: - output unmodified content <?= $str ?> - output htmlspecialchars escaped content <?+ $str ?> or <?~ $str ?> - output strip_tags <?- $str ?> - output intval <?# $str ?> Previous Comments: ------------------------------------------------------------------------ [2012-12-05 23:12:57] chuyu at microsoft dot com I was thinking the same thing. One advantage of using some template engines(twig, phptal) is that they automatically escape html characters during output. Many people use these template engine simply for that due to XSS worries. However if we have such an operator, then we create a simple php native template engine(which I'm all for), and in the template always use this operator to prevent XSS. I would suggest to make the operator like <?~ $var ?>, the reason is that ~ is often located near the 'ESC' on the keyboard, so it feels more like escape :-) ------------------------------------------------------------------------ [2012-10-26 19:24:31] ajf at ajf dot me @dagguh: What? I'm just suggesting exporting variables into the global namespace, and escaping them in the process, for templating purposes. ------------------------------------------------------------------------ [2012-10-26 19:07:08] dagguh at gmail dot com This is valid. @ajf: You should never dop anything "ahead-of-time" in programming. You shoudl escape a variable right before passing it to en environment, that requires this form of escaping ------------------------------------------------------------------------ [2012-09-04 18:15:37] ajf at ajf dot me (I'm all for this though, I'm just pointing out other options) ------------------------------------------------------------------------ [2012-09-04 18:06:32] ajf at ajf dot me You can escape things ahead-of-time, you know. In fact, I have a feeling you could use foreach to traverse the symtable and escape everything. (don't do that though, that's a horrendous idea) ------------------------------------------------------------------------ The remainder of the comments for this report are too long. To view the rest of the comments, please view the bug report online at https://bugs.php.net/bug.php?id=62574 -- Edit this bug report at https://bugs.php.net/bug.php?id=62574&edit=1