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 采集程序中常用的函数
Dec 09 PHP
php url地址栏传中文乱码解决方法集合
Jun 25 PHP
利用PHP+JS实现搜索自动提示(实例)
Jun 09 PHP
win7+apache+php+mysql环境配置操作详解
Jun 10 PHP
PHP调用MsSQL Server 2012存储过程获取多结果集(包含output参数)的详解
Jul 03 PHP
php二维数组排序详解
Nov 06 PHP
PHP 下载文件时自动添加bom头的方法实例
Jan 10 PHP
修改ThinkPHP缓存为Memcache的方法
Jun 25 PHP
PHP中使用imagick生成PSD文件缩略图教程
Jan 26 PHP
PHP实现XML与数据格式进行转换类实例
Jul 29 PHP
php实现多维数组排序的方法示例
Mar 23 PHP
Laravel中批量赋值Mass-Assignment的真正含义详解
Sep 29 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
9个PHP开发常用功能函数小结
2011/07/15 PHP
PHP数组 为文章加关键字连接 文章内容自动加链接
2011/12/29 PHP
国产PHP开发框架myqee新手快速入门教程
2014/07/14 PHP
destoon实现调用图文新闻的方法
2014/08/21 PHP
在Nginx上部署ThinkPHP项目教程
2015/02/02 PHP
关于php支持的协议与封装协议总结(推荐)
2017/11/17 PHP
php使用json-schema模块实现json校验示例
2019/09/28 PHP
面向对象的编程思想在javascript中的运用上部
2009/11/20 Javascript
jQuery 源码分析笔记(5) jQuery.support
2011/06/19 Javascript
IE6,IE7,IE8下使用Javascript记录光标选中范围(已补全)
2011/08/28 Javascript
js实现iframe跨页面调用函数的方法
2014/12/13 Javascript
jQuery中:text选择器用法实例
2015/01/03 Javascript
vue实现表格数据的增删改查
2017/07/10 Javascript
JavaScript实现左侧菜单效果
2017/12/14 Javascript
vue实现样式之间的切换及vue动态样式的实现方法
2017/12/19 Javascript
JS 实现百度搜索功能
2018/02/01 Javascript
angular实现页面打印局部功能的思考与方法
2018/04/13 Javascript
微信小程序上传图片实例
2018/05/28 Javascript
微信小程序 冒泡事件原理解析
2019/09/27 Javascript
javascript单张多张图无缝滚动实例代码
2020/05/10 Javascript
JS箭头函数和常规函数之间的区别实例分析【 5 个区别】
2020/05/27 Javascript
原生js+css实现tab切换功能
2020/09/17 Javascript
17个Python小技巧分享
2015/01/23 Python
Python常用内置模块之xml模块(详解)
2017/05/23 Python
Python yield与实现方法代码分析
2018/02/06 Python
python使用Matplotlib画饼图
2018/09/25 Python
Python3实现的旋转矩阵图像算法示例
2019/04/03 Python
Pytorch之保存读取模型实例
2019/12/30 Python
HTML5 placeholder(空白提示)属性介绍
2013/08/07 HTML / CSS
HTML5到底会有什么发展?HTML5的前景展望
2015/07/07 HTML / CSS
Java面试题:请说出如下代码的输出结果
2013/04/22 面试题
《小松树和大松树》教学反思
2014/02/20 职场文书
2014年宣传工作总结
2014/11/18 职场文书
2016习总书记系列重要讲话心得体会
2016/01/15 职场文书
2019个人工作计划书的格式及范文!
2019/07/04 职场文书
JS实现简单控制视频播放倍速的实例代码
2021/04/18 Javascript