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和mysql中uft-8中文编码乱码的几种解决办法
Apr 19 PHP
CodeIgniter生成网站sitemap地图的方法
Nov 13 PHP
php中自定义函数dump查看数组信息类似var_dump
Jan 27 PHP
php分页函数完整实例代码
Sep 22 PHP
PHP 双链表(SplDoublyLinkedList)简介和使用实例
May 12 PHP
PHP中使用GD库绘制折线图 折线统计图的绘制方法
Nov 09 PHP
关于ThinkPhp 框架表单验证及ajax验证问题
Jul 19 PHP
PHP并发查询MySQL的实例代码
Aug 09 PHP
PHP实现执行外部程序的方法详解
Aug 17 PHP
PHP+ajax实现获取新闻数据简单示例
May 08 PHP
PHP 获取客户端 IP 地址的方法实例代码
Nov 11 PHP
详解Laravel服务容器的优势
May 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
随机广告显示(PHP函数)
2006/10/09 PHP
浅析PHP原理之变量(Variables inside PHP)
2013/08/09 PHP
PHP大文件及断点续传下载实现代码
2020/08/18 PHP
PHP7 整型处理机制修改
2021/03/09 PHP
jquery中输入验证中一个不错的效果
2010/08/21 Javascript
jquery弹出框的用法示例(一)
2013/08/26 Javascript
JS阻止用户多次提交示例代码
2014/03/26 Javascript
JavaScript对数组进行随机重排的方法
2015/07/22 Javascript
jQuery横向擦除焦点图特效代码分享
2015/09/06 Javascript
JS+CSS实现的经典圆角下拉菜单效果代码
2015/10/21 Javascript
微信公众平台开发教程(五)详解自定义菜单
2016/12/02 Javascript
移动端脚本框架Hammer.js
2016/12/15 Javascript
JavaScript中 ES6变量的结构赋值
2018/07/10 Javascript
详解如何制作并发布一个vue的组件的npm包
2018/11/10 Javascript
vue 弹窗时 监听手机返回键关闭弹窗功能(页面不跳转)
2019/05/10 Javascript
在vue-cli中引入lodash.js并使用详解
2019/11/13 Javascript
[52:20]VP vs VG Supermajor小组赛 B组胜者组决赛 BO3 第一场 6.2
2018/06/03 DOTA
[51:32]Optic vs Serenity 2018国际邀请赛淘汰赛BO3 第一场 8.22
2018/08/23 DOTA
Python切换pip安装源的方法详解
2016/11/18 Python
python学习之面向对象【入门初级篇】
2017/01/21 Python
python处理按钮消息的实例详解
2017/07/11 Python
利用python求相邻数的方法示例
2017/08/18 Python
Python整数与Numpy数据溢出问题解决
2019/09/11 Python
Pycharm 2020最新永久激活码(附最新激活码和插件)
2020/09/17 Python
对python中return与yield的区别详解
2020/03/12 Python
如何用python实现一个HTTP连接池
2021/01/14 Python
浅析几个CSS3常用功能的写法
2014/06/05 HTML / CSS
护理自荐信范文
2013/10/05 职场文书
标准导师推荐信(医学类)
2013/10/28 职场文书
大学生通用个人的自我评价
2014/02/10 职场文书
计算机相关专业自荐信
2014/07/02 职场文书
继承公证书格式
2015/01/26 职场文书
小学新教师个人总结
2015/02/05 职场文书
歼十出击观后感
2015/06/11 职场文书
七一慰问简报
2015/07/20 职场文书
高中数学教学反思范文
2016/02/18 职场文书