我已经在WordPress中阅读了WP codex和一些关于数据验证和卫生的教程。现在我有了这个简单的示例代码:
$title = "<script>alert(\'Test\')</script>";
echo esc_html($title);
根据教程和法典,这应该是输出:
<script>alert('test')</script>
但在我的网站上,我发现:<script>alert(\'Test\')</script>
.
我做错什么了吗?因为没有执行XSS,所以esc\\U html过滤器工作正常。
提前感谢!
最合适的回答,由SO网友:RRikesh 整理而成
您的代码工作正常。如果查看页面的源代码,您将看到:
<script>alert('Test')</script>
当浏览器处理上述文本以供显示时,它将变为
<script>alert(\'Test\')</script>
这就是你想要的
displayed.