php使用mysqli和pdo扩展,测试对比mysql数据库的执行效率完整示例


Posted in PHP onMay 09, 2019

本文实例讲述了php使用mysqli和pdo扩展,测试对比mysql数据库的执行效率。分享给大家供大家参考,具体如下:

<?php
/**
 * 测试pdo和mysqli的执行效率
 */
header("Content-type:text/html;charset=utf-8");
//通过pdo链接数据库
$pdo_startTime = microtime(true);
$pdo = new PDO("mysql:host=localhost;dbname=test","root","1234",array(PDO::MYSQL_ATTR_INIT_COMMAND => "SET NAMES'utf8';"));
for($i=1;$i<=100;$i++){
  $title = "pdo标题".$i;
  $content = "pdo内容".$i;
  $addtime = time();
  $user_id = $i;
  $pdo_sql = "INSERT INTO `article`(`title`,`content`,`addtime`,`user_id`) VALUES(:title,:content,:addtime,:user_id)";
  $sth = $pdo->prepare($pdo_sql);
  $sth->bindParam(':title',$title);
  $sth->bindParam(':content',$content);
  $sth->bindParam(':addtime',$addtime);
  $sth->bindParam(':user_id',$user_id);
  $sth->execute();
}
$pdo_endTime = microtime(true);
$pdo_time = $pdo_endTime - $pdo_startTime;
echo $pdo_time;
echo "<hr/>";
//通过mysql链接数据库
$mysqli_startTime = microtime(true);
$mysqli = mysqli_connect("localhost","root","1234","test") or die("数据连接失败");
mysqli_query($mysqli,"set names utf8");
for($i=1;$i<=100;$i++){
  $title = "mysqli标题".$i;
  $content = "mysqli内容".$i;
  $addtime = time();
  $user_id = $i;
  $sql = "INSERT INTO `article`(`title`,`content`,`addtime`,`user_id`) VALUES('".$title."','".$content."',".$addtime.",".$user_id.")";
  mysqli_query($mysqli,$sql);
}
$mysqli_endTime = microtime(true);
$mysqli_time = $mysqli_endTime - $mysqli_startTime;
echo $mysqli_time;
echo "<hr/>";
if($pdo_time > $mysqli_time){
  echo "pdo的执行时间是mysqli的".round($pdo_time/$mysqli_time)."倍";
}else{
  echo "mysqli的执行时间是pdo的".round($mysqli_time/$pdo_time)."倍";
}

测试结果:其实经过多次测试,pdo和mysqli的执行效率差不多。

php使用mysqli和pdo扩展,测试对比mysql数据库的执行效率完整示例

希望本文所述对大家PHP程序设计有所帮助。

PHP 相关文章推荐
用PHP开发GUI
Oct 09 PHP
用Flash图形化数据(二)
Oct 09 PHP
PHP如何得到当前页和上一页的地址?
Nov 27 PHP
PHP中Date()时间日期函数的使用方法小结
Apr 20 PHP
php gzip压缩输出的实现方法
Apr 27 PHP
destoon实现会员商铺中指定会员或会员组投放广告的方法
Aug 21 PHP
PHP连接MSSQL时nvarchar字段长度被截断为255的解决方法
Dec 25 PHP
windows中为php安装mongodb与memcache
Jan 06 PHP
ThinkPHP 404页面的设置方法
Jan 14 PHP
PHP 绘制网站登录首页图片验证码
Apr 12 PHP
PHP实现的装箱算法示例
Jun 23 PHP
Laravel 在views中加载公共页面的实现代码
Oct 22 PHP
php使用mysqli和pdo扩展,测试对比连接mysql数据库的效率完整示例
May 09 #PHP
PHP CURL中传递cookie的方法步骤
May 09 #PHP
PHP正则表达式处理函数(PCRE 函数)实例小结
May 09 #PHP
Laravel配置全局公共函数的方法步骤
May 09 #PHP
Laravel Validator自定义错误返回提示消息并在前端展示
May 09 #PHP
PHP正则表达式笔记与实例详解
May 09 #PHP
PHP抽象类与接口的区别实例详解
May 09 #PHP
You might like
php实现自定义中奖项数和概率的抽奖函数示例
2017/05/26 PHP
LaravelS通过Swoole加速Laravel/Lumen详解
2018/03/02 PHP
Windows平台PHP+IECapt实现网页批量截图并创建缩略图功能详解
2019/08/02 PHP
jQuery的Ajax的自动完成功能控件简要说明
2013/02/22 Javascript
ComboBox 和 DateField 在IE下消失的解决方法
2013/08/30 Javascript
深入理解JSON数据源格式
2014/01/10 Javascript
JS正则表达式验证数字代码
2014/01/28 Javascript
jquery ajaxSubmit 异步提交的简单实现
2014/02/28 Javascript
jquery表单对象属性过滤选择器实例分析
2015/05/18 Javascript
jquery实现顶部向右伸缩的导航区域代码
2015/09/02 Javascript
详细谈谈AngularJS的子级作用域问题
2016/09/05 Javascript
浅析BootStrap Treeview的简单使用
2016/10/12 Javascript
js仿微信语音播放实现思路
2016/12/12 Javascript
JS实现图片放大镜插件详解
2017/11/06 Javascript
使用Vue.js 和Chart.js制作绚丽多彩的图表
2019/06/15 Javascript
JS实现在线ps功能详解
2019/07/31 Javascript
Vue数据绑定实例写法
2019/08/06 Javascript
小程序实现层叠卡片滑动效果
2019/08/26 Javascript
Nuxt.js 静态资源和打包的操作
2020/11/06 Javascript
[04:21]狐狸妈带你到现场 DOTA2 TI中国区预选赛线下赛路线指引
2014/05/22 DOTA
[01:07:19]DOTA2-DPC中国联赛 正赛 CDEC vs XG BO3 第一场 1月19日
2021/03/11 DOTA
Python模块学习 datetime介绍
2012/08/27 Python
PyQt5重写QComboBox的鼠标点击事件方法
2019/06/25 Python
python实现日志按天分割
2019/07/22 Python
Python手绘可视化工具cutecharts使用实例
2019/12/05 Python
python保留格式汇总各部门excel内容的实现思路
2020/06/01 Python
对Python 字典元素进行删除的方法
2020/07/31 Python
什么是测试驱动开发(TDD)
2012/02/15 面试题
历史专业个人求职信范文
2013/12/07 职场文书
初一英语教学反思
2014/01/11 职场文书
施工单位安全责任书
2014/07/24 职场文书
光棍节联谊晚会活动策划书
2014/10/10 职场文书
2015年教研室工作总结范文
2015/05/23 职场文书
《青山不老》教学反思
2016/02/22 职场文书
手把手教你使用TensorFlow2实现RNN
2021/07/15 Python
JavaWeb 入门篇:创建Web项目,Idea配置tomcat
2021/07/16 Java/Android