当前位置:Gxlcms > 数据库问题 > php中使用mysqli和pdo扩展,测试mysql数据库的执行效率。

php中使用mysqli和pdo扩展,测试mysql数据库的执行效率。

时间:2021-07-01 10:21:17 帮助过:25人阅读

  1. <?php
  2. /**
  3. * 测试pdo和mysqli的执行效率
  4. */
  5. header("Content-type:text/html;charset=utf-8");
  6. //通过pdo链接数据库
  7. $pdo_startTime = microtime(true);
  8. $pdo = new PDO("mysql:host=localhost;dbname=test","root","1234",array(PDO::MYSQL_ATTR_INIT_COMMAND => "SET NAMES‘utf8‘;"));
  9. for($i=1;$i<=100;$i++){
  10. $title = "pdo标题".$i;
  11. $content = "pdo内容".$i;
  12. $addtime = time();
  13. $user_id = $i;
  14. $pdo_sql = "INSERT INTO `article`(`title`,`content`,`addtime`,`user_id`) VALUES(:title,:content,:addtime,:user_id)";
  15. $sth = $pdo->prepare($pdo_sql);
  16. $sth->bindParam(‘:title‘,$title);
  17. $sth->bindParam(‘:content‘,$content);
  18. $sth->bindParam(‘:addtime‘,$addtime);
  19. $sth->bindParam(‘:user_id‘,$user_id);
  20. $sth->execute();
  21. }
  22. $pdo_endTime = microtime(true);
  23. $pdo_time = $pdo_endTime - $pdo_startTime;
  24. echo $pdo_time;
  25. echo "<hr/>";
  26. //通过mysql链接数据库
  27. $mysqli_startTime = microtime(true);
  28. $mysqli = mysqli_connect("localhost","root","1234","test") or die("数据连接失败");
  29. mysqli_query($mysqli,"set names utf8");
  30. for($i=1;$i<=100;$i++){
  31. $title = "mysqli标题".$i;
  32. $content = "mysqli内容".$i;
  33. $addtime = time();
  34. $user_id = $i;
  35. $sql = "INSERT INTO `article`(`title`,`content`,`addtime`,`user_id`) VALUES(‘".$title."‘,‘".$content."‘,".$addtime.",".$user_id.")";
  36. mysqli_query($mysqli,$sql);
  37. }
  38. $mysqli_endTime = microtime(true);
  39. $mysqli_time = $mysqli_endTime - $mysqli_startTime;
  40. echo $mysqli_time;
  41. echo "<hr/>";
  42. if($pdo_time > $mysqli_time){
  43. echo "pdo的执行时间是mysqli的".round($pdo_time/$mysqli_time)."倍";
  44. }else{
  45. echo "mysqli的执行时间是pdo的".round($mysqli_time/$pdo_time)."倍";
  46. }

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

技术分享

 

php中使用mysqli和pdo扩展,测试mysql数据库的执行效率。

标签:attr   host   name   分享   values   into   content   connect   cut   

人气教程排行