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数据库操作类
Jun 04 PHP
php压缩多个CSS为一个css的代码并缓存
Apr 21 PHP
php重定向的三种方法分享
Feb 22 PHP
解析crontab php自动运行的方法
Jun 24 PHP
ThinkPHP Mobile使用方法简明教程
Jun 18 PHP
PHP图片处理之图片旋转和图片翻转实例
Nov 19 PHP
php中静态类与静态变量用法的区别分析
Jan 15 PHP
PHP用反撇号执行外部命令
Apr 14 PHP
SSO单点登录的PHP实现方法(Laravel框架)
Mar 23 PHP
PHP利用二叉堆实现TopK-算法的方法详解
Apr 24 PHP
PHP7使用ODBC连接SQL Server2008 R2数据库示例【基于thinkPHP5.1框架】
May 06 PHP
tp5.1框架数据库子查询操作实例分析
May 26 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
咖啡风味 世界咖啡主要分布分布 咖啡的生长要求
2021/03/06 新手入门
四个PHP非常实用的功能
2015/09/29 PHP
Laravel中注册Facades的步骤详解
2016/03/16 PHP
smarty中改进truncate使其支持中文的方法
2016/05/30 PHP
PHP中new static()与new self()的比较
2016/08/19 PHP
PHP获取用户客户端真实IP的解决方案
2016/10/10 PHP
php封装的mysqli类完整实例
2016/10/18 PHP
YII框架实现自定义第三方扩展操作示例
2019/04/26 PHP
[原创]保存的js无法执行的解决办法
2007/02/25 Javascript
JS实现文字向下滚动完整实例
2015/02/06 Javascript
javascript感应鼠标图片透明度显示的方法
2015/02/24 Javascript
编写高质量JavaScript代码的基本要点
2016/03/02 Javascript
JS中的二叉树遍历详解
2016/03/18 Javascript
ComboBox(下拉列表框)通过url加载调用远程数据的方法
2017/08/06 Javascript
ES6扩展运算符用法实例分析
2017/10/31 Javascript
three.js实现3D影院的原理的代码分析
2017/12/18 Javascript
js实现简单的打印表格
2020/01/15 Javascript
JS this关键字在ajax中使用出现问题解决方案
2020/07/17 Javascript
Python实现截屏的函数
2015/07/26 Python
Python设计模式编程中Adapter适配器模式的使用实例
2016/03/02 Python
利用numpy+matplotlib绘图的基本操作教程
2017/05/03 Python
利用python对Excel中的特定数据提取并写入新表的方法
2018/06/14 Python
Python3使用SMTP发送带附件邮件
2020/06/16 Python
python3实现windows下同名进程监控
2018/06/21 Python
查看keras各种网络结构各层的名字方式
2020/06/11 Python
Python实现中英文全文搜索的示例
2020/12/04 Python
Roots加拿大官网:加拿大休闲服饰品牌
2016/10/24 全球购物
英国Zoro工具:手动工具,电动工具和个人防护用品
2016/11/02 全球购物
英国一家集合了众多有才华设计师品牌的奢侈店:Wolf & Badger
2018/04/18 全球购物
巡警年度自我鉴定
2014/02/21 职场文书
社会实践先进工作者事迹材料
2014/05/06 职场文书
学校春季防火方案
2014/06/08 职场文书
学生旷课检讨书500字
2014/10/28 职场文书
商场圣诞节活动总结
2015/05/06 职场文书
小学生教师节广播稿
2015/08/19 职场文书
安装Ruby和 Rails的详细步骤
2022/04/19 Ruby