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 相关文章推荐
PHP文本数据库的搜索方法
Oct 09 PHP
我的论坛源代码(四)
Oct 09 PHP
不错的一篇面向对象的PHP开发模式(简写版)
Mar 15 PHP
php 删除记录同时删除图片文件的实现代码
May 12 PHP
深入理解PHP中的Session和Cookie
Jun 21 PHP
PHP文件大小格式化函数合集
Mar 10 PHP
Win2003+apache+PHP+SqlServer2008 配置生产环境
Jul 29 PHP
thinkphp实现like模糊查询实例
Oct 29 PHP
thinkphp验证码的实现(form、ajax实现验证)
Jul 28 PHP
thinkPHP框架RBAC实现原理分析
Feb 01 PHP
ThinkPHP3.1.2 使用cli命令行模式运行的方法
Apr 14 PHP
Thinkphp极验滑动验证码实现步骤解析
Nov 24 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 学习路线与时间表
2010/02/21 PHP
php数组函数序列之array_flip() 将数组键名与值对调
2011/11/07 PHP
thinkphp3.0输出重复两次的解决方法
2014/12/19 PHP
在PHP中使用FastCGI解析漏洞及修复方案
2015/11/10 PHP
PHP中递归的实现实例详解
2017/11/14 PHP
php 实现简单的登录功能示例【基于thinkPHP框架】
2019/12/02 PHP
在线编辑器中换行与内容自动提取
2009/04/24 Javascript
使用JavaScript构建JSON格式字符串实现步骤
2013/03/22 Javascript
代码触发js事件(click、change)示例应用
2013/12/13 Javascript
vue.js入门教程之基础语法小结
2016/09/01 Javascript
Bootstrap源码解读媒体对象、列表组和面板(10)
2016/12/26 Javascript
Vue.js自定义指令的用法与实例解析
2017/01/18 Javascript
在 Angular 中实现搜索关键字高亮示例
2017/03/21 Javascript
微信小程序学习之数据处理详解
2017/07/05 Javascript
10 种最常见的 Javascript 错误(频率最高)
2018/02/08 Javascript
vue 实现小程序或商品秒杀倒计时
2019/04/14 Javascript
150行Node.js实现的dns代理工具
2019/08/02 Javascript
three.js利用卷积法如何实现物体描边效果
2019/11/27 Javascript
微信小程序仿通讯录功能
2020/04/09 Javascript
javascript的hashCode函数实现代码小结
2020/08/11 Javascript
vue 数据操作相关总结
2020/12/17 Vue.js
python3.0 字典key排序
2008/12/24 Python
Python subprocess模块常见用法分析
2018/06/12 Python
python实现上传文件到linux指定目录的方法
2020/01/03 Python
使用索引(Index)有哪些需要考虑的因素
2016/10/19 面试题
财务工作者先进事迹材料
2014/01/17 职场文书
高中数学教学反思
2014/01/30 职场文书
简单的项目建议书模板
2014/03/12 职场文书
房屋租赁意向书
2014/04/01 职场文书
3分钟英语演讲稿
2014/04/29 职场文书
监督检查工作方案
2014/05/28 职场文书
车间统计员岗位职责
2015/04/14 职场文书
安全生产协议书
2016/03/22 职场文书
职工的安全责任书范文!
2019/07/02 职场文书
python百行代码实现汉服圈图片爬取
2021/11/23 Python
Python的property属性详细讲解
2022/04/11 Python