<?php
function init_vera_htmlspecialchars() {
if (version_compare(PHP_VERSION, '5.4.0') >= 0) {
define('V_ENT_COMPAT_HTML401',ENT_COMPAT | ENT_HTML401);
function vera_htmlspecialchars($string, $flags = V_ENT_COMPAT_HTML401 , $encoding = 'ISO-8869-2', $doubleEncode = true) {
return htmlspecialchars($string, $flags, $encoding, $doubleEncode);
}
} elseif (version_compare(PHP_VERSION, '5.2.3') >= 0) {
function vera_htmlspecialchars($string, $flags = ENT_COMPAT, $encoding = 'ISO-8869-2', $doubleEncode = true) {
return htmlspecialchars($string, $flags, $encoding, $doubleEncode);
}
} else {
function vera_htmlspecialchars($string, $flags = ENT_COMPAT, $encoding = 'ISO-8869-2', $doubleEncode = true) {
return htmlspecialchars($string, $flags, $encoding);
}
}
};
init_vera_htmlspecialchars();
$start = microtime(true);
for ($i=0; $i<1000000; $i++) {
$str = htmlspecialchars('asdf&<>;\'"',ENT_QUOTES,'UTF-8');
}
echo $str . "\n";
$middle = microtime(true);
for ($i=0; $i<1000000; $i++) {
$str = vera_htmlspecialchars('asdf&<>;\'"',ENT_QUOTES,'UTF-8');
}
echo $str . "\n";
$end = microtime(true);
echo ($middle-$start) . "\n";
echo ($end - $middle) . "\n";
preferences:
35.35 ms | 402 KiB | 5 Q