php内置math函数效率问题测试对比
php math函数运算效率比较:
复制代码 代码示例:
$start = microtime(TRUE);
for ($i=0; $i < 200000; $i++){
$s = 0;
for ($j=0; $j < 3; $j++){
$s += ($j+$i+1) * ($j+$i+1);
}
}
echo microtime(TRUE) – $start; // output: 0.33167719841003
再对比下用Math函数的代码和结果,代码:
复制代码 代码示例:
$start = microtime(TRUE);
for ($i=0; $i < 200000; $i++){
$s = 0;
for ($j=0; $j < 3; $j++){
$s += pow($j+$i+1, 2);
}
}
echo microtime(TRUE) – $start; // output: 0.87528896331787
效率提升100%!
PHP内置Math其实并不快,像取绝对值abs,最大值max,最小值min等效率都不如原生if判断来得快。