htmlspecialchars($string, ENT_NOQUOTES);
...大约比以下2.5倍慢:
str_replace(array('&', '<', '>'), array('&', '<', '>'), $string);
是htmlspecialchars
做一些事情str_replace
线没有吗?
附:我使用 microtime
测量了 PHP 5.4 的速度.
最佳答案
str_replace()
将字符串视为 ASCII C 字符串。 htmlspecialchars()
没有。 (如果没记错的话,在 php 5.4 中默认是 UTF8 字符串。)
此外,htmlspecialchars()
中有代码可以避免双重编码等。它可以做更多的事情。
关于php - 为什么 "htmlspecialchars"这么慢?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16384515/