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 相关文章推荐
文章推荐系统(二)
Oct 09 PHP
PHP中的正规表达式(二)
Oct 09 PHP
PHP 工厂模式使用方法
May 18 PHP
PHP中数组的分组排序实例
Jun 01 PHP
CodeIgniter中实现泛域名解析
Jul 19 PHP
php实现过滤表单提交中html标签的方法
Oct 17 PHP
php常用文件操作函数汇总
Nov 22 PHP
php 生成Tab键或逗号分隔的CSV
Sep 24 PHP
php二维码生成以及下载实现
Sep 28 PHP
PHP绕过open_basedir限制操作文件的方法
Jun 10 PHP
php判断电子邮件是否正确方法
Dec 04 PHP
TP5.0框架实现无限极回复功能的方法分析
May 04 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
无限级别菜单的实现
2006/10/09 PHP
php防止伪造数据从地址栏URL提交的方法
2014/08/24 PHP
laravel容器延迟加载以及auth扩展详解
2015/03/02 PHP
PHP MVC框架中类的自动加载机制实例分析
2019/09/18 PHP
Laravel定时任务的每秒执行代码
2019/10/22 PHP
setTimeout和setInterval的浏览器兼容性分析
2007/02/27 Javascript
javascript 模式设计之工厂模式详细说明
2010/05/10 Javascript
JS实现图片预加载无需等待
2012/12/21 Javascript
jQuery父级以及同级元素查找介绍
2013/09/04 Javascript
js跳转页面方法实现汇总
2014/02/11 Javascript
创建自己的jquery表格插件
2015/11/25 Javascript
jquery限定文本框只能输入数字(整数和小数)
2016/01/08 Javascript
js跨域资源共享 基础篇
2016/07/02 Javascript
JS判断数组那点事
2017/10/10 Javascript
JavaScript 有用的代码片段和 trick
2018/02/22 Javascript
微信小程序首页的分类功能和搜索功能的实现思路及代码详解
2018/09/11 Javascript
浅谈HTTP 缓存的那些事儿
2018/10/17 Javascript
全面了解JavaScript的作用域链
2019/04/03 Javascript
使用Vue-Awesome-Swiper实现旋转叠加轮播效果&amp;平移轮播效果
2019/08/16 Javascript
基于vue的video播放器的实现示例
2021/02/19 Vue.js
[02:15]2015国际邀请赛选手档案IG.Ferrari 430
2015/07/30 DOTA
python操作摄像头截图实现远程监控的例子
2014/03/25 Python
python绘制随机网络图形示例
2019/11/21 Python
Python实现图片批量加入水印代码实例
2019/11/30 Python
tensorflow将图片保存为tfrecord和tfrecord的读取方式
2020/02/17 Python
总结Pyinstaller的坑及终极解决方法(小结)
2020/09/21 Python
Python爬取酷狗MP3音频的步骤
2021/02/26 Python
门诊挂号室室长岗位职责
2013/11/27 职场文书
行政人员工作职责
2013/12/05 职场文书
校园自助餐厅的创业计划书
2013/12/26 职场文书
无保留意见审计报告
2015/06/05 职场文书
纪念建国70周年演讲稿
2019/07/19 职场文书
遇事可以测出您的见识与格局
2019/09/16 职场文书
导游词之凤凰古城
2019/10/22 职场文书
CSS 制作波浪效果的思路
2021/05/18 HTML / CSS
python基础之模块的导入
2021/10/24 Python