PHP内置的Math函数效率测试


Posted in PHP onDecember 01, 2014

本文实例分析了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判断来得快.

总的来说,php运算的确是很慢,真心不适合做大规模的算法运算.希望本文所述对大家的PHP程序设计有所帮助。

PHP 相关文章推荐
PHP5新特性: 更加面向对象化的PHP
Nov 18 PHP
PHP 程序授权验证开发思路
Jul 09 PHP
win7+apache+php+mysql环境配置操作详解
Jun 10 PHP
PHP获取数组长度或某个值出现次数的方法
Feb 11 PHP
Zend Framework教程之路由功能Zend_Controller_Router详解
Mar 07 PHP
PHP数组生成XML格式数据的封装类实例
Nov 10 PHP
PHP redis实现超迷你全文检索
Mar 04 PHP
PHP设计模式之原型设计模式原理与用法分析
Apr 25 PHP
Thinkphp5框架简单实现钩子(Hook)行为的方法示例
Sep 03 PHP
php设计模式之迭代器模式实例分析【星际争霸游戏案例】
Apr 07 PHP
tp5.1 框架查询表达式用法详解
May 25 PHP
PHP 超级全局变量相关总结
Jun 30 PHP
php查找字符串出现次数的方法
Dec 01 #PHP
ThinkPHP实现动态包含文件的方法
Nov 29 #PHP
PHP静态文件生成类实例
Nov 29 #PHP
ThinkPHP实现非标准名称数据表快速创建模型的方法
Nov 29 #PHP
PHP实现的简单日历类
Nov 29 #PHP
PHP实现货币换算的方法
Nov 29 #PHP
php实现的树形结构数据存取类实例
Nov 29 #PHP
You might like
网友原创的PHP模板类代码
2008/09/07 PHP
PHP使用imagick扩展实现合并图像的方法
2017/04/25 PHP
PHP实现数组根据某个单元字段排序操作示例
2018/08/01 PHP
浅析PHP echo 和 print 语句
2020/06/30 PHP
JavaScript中具名函数的多种调用方式总结
2014/11/08 Javascript
微信小程序 自定义对话框实例详解
2017/01/20 Javascript
Vue 过渡(动画)transition组件案例详解
2017/01/22 Javascript
js实现颜色阶梯渐变效果(Gradient算法)
2017/03/21 Javascript
实例详解JSON取值(key是中文或者数字)方式
2017/08/24 Javascript
JS中实现一个下载进度条及播放进度条的代码
2019/06/10 Javascript
java实现单链表增删改查的实例代码详解
2019/08/30 Javascript
layer.js之回调销毁对话框的例子
2019/09/11 Javascript
vue自动化路由的实现代码
2019/09/30 Javascript
如何使用RoughViz可视化Vue.js中的草绘图表
2021/01/30 Vue.js
[00:35]DOTA2上海特级锦标赛 Newbee战队宣传片
2016/03/03 DOTA
Python二维码生成库qrcode安装和使用示例
2014/12/16 Python
使用相同的Apache实例来运行Django和Media文件
2015/07/22 Python
简单介绍Python中的几种数据类型
2016/01/02 Python
Python实现PS滤镜特效之扇形变换效果示例
2018/01/26 Python
Python爬取爱奇艺电影信息代码实例
2019/11/26 Python
jupyter notebook tensorflow打印device信息实例
2020/04/20 Python
Python request使用方法及问题总结
2020/04/26 Python
CSS3中的注音对齐属性ruby-align用法指南
2016/07/01 HTML / CSS
如何使用canvas绘制可移动网格的示例代码
2020/12/14 HTML / CSS
SneakerStudio英国:最佳运动鞋商店
2019/05/22 全球购物
介绍下Java中==和equals的区别
2013/09/01 面试题
执行力心得体会
2013/12/31 职场文书
学期研究性学习个人的自我评价
2014/01/09 职场文书
购房个人委托书范本
2014/10/11 职场文书
房屋产权证明书
2014/10/15 职场文书
2014年人事专员工作总结
2014/11/19 职场文书
2014年高校辅导员工作总结
2014/12/09 职场文书
刑事案件上诉状
2015/05/23 职场文书
2016教师党员学习心得体会
2016/01/21 职场文书
SpringBoot整合MongoDB的实现步骤
2021/06/23 MongoDB
Python Django / Flask如何使用Elasticsearch
2022/04/19 Python