首页 > 语言 > PHP > 正文

慎用PHP内置的Math函数

2024-09-04 11:48:43
字体:
来源:转载
供稿:网友

如题所示,木有做大规模的运算,还不知道,PHP的Math函数运算原来是如此之慢的,大家还是麻烦点,手写多几句,代码如下:

  1. $start = microtime(TRUE);    
  2. for ($i=0; $i < 200000; $i++)   {    
  3.     $s = 0;       for ($j=0; $j < 3; $j++)       {     
  4.        $s += ($j+$i+1) * ($j+$i+1);       }    
  5. }    
  6. echo microtime(TRUE) – $start;   # output: 0.33167719841003   

再对比下用Math函数的代码和结果,代码如下:

  1. $start = microtime(TRUE);    
  2. for ($i=0; $i < 200000; $i++)   {    
  3.     $s = 0;       for ($j=0; $j < 3; $j++)       {     
  4.        $s += pow($j+$i+1, 2);       }    
  5. }//开源代码Vevb.com 
  6. echo microtime(TRUE) – $start;   # output: 0.87528896331787 

看到木有,效率提升100%丫,以前还一直都认为是PHP内置的Math快,真是不测不知道,像取绝对值abs,最大值max,最小值min 等效率都不如原生的 if判断来得快.

总的来说,php运算的确是很慢,真心不适合做大规模的算法运算.

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表