手机版

PDO 与 MySQLi 二者效率简单比较 - MySQL中文参考手册

2019-09-11 阅读 :

PDO 与 MySQLi 二者效率简单比较

连接效率比较

<?php$p_start_time = microtime(true);for ($i = 1; $i <= 100; $i++) {    $pdo = new PDO('mysql:host=localhost;dbname=test', 'root', 'aaaaaa');}$p_end_time = microtime(true);$res = $p_end_time - $p_start_time; // PDO 连接方式耗时$m_start_time = microtime(true);for ($i = 1; $i <= 100; $i++) {    mysqli_connect('localhost', 'root', 'aaaaaa', 'test');}$m_end_time = microtime(true);$res2 = $m_end_time - $p_start_time; // MySQL 连接方式耗时var_dump($res, '<br />', $res2);if ($res > $res2) {    echo 'PDO 连接数据库是 MySQL 的' . round($res2 / $res) . '倍';} else {    echo 'MySQL 连接数据库是 PDO 的' . round($res2 / $res) . '倍';}

写入速度比较

<?php// PDO 与 MySQLi 两种连接方式写入效率简单比较$p_start_time = microtime(true);$pdo = new PDO('mysql:host=localhost;dbname=test', 'root', 'aaaaaa');// 写入数据表$sql = <<<EOFCREATE TABLE IF NOT EXISTS test(    id int unsigned not null)ENGINE=InnoDB CHARSET utf8 comment '写入测试表';EOF;$pdo->exec($sql);// 使用 PDO 预处理语句写入 500 条数据到数据库$sql = 'INSERT INTO test VALUES(:id)';$statement = $pdo->prepare($sql);for ($i = 1; $i <= 500; $i++) {    $id = 1;    $statement->bindParam(':id', $id, PDO::PARAM_INT);    $statement->execute();}unset($pdo); // 销毁 PDO 对象$p_end_time = microtime(true);$res = $p_end_time - $p_start_time; // PDO 连接方式耗时$m_start_time = microtime(true);// 使用 MySQLi 连接方式写入 500 条数据到数据库$link = mysqli_connect('localhost', 'root', 'aaaaaa', 'test');for ($i = 1; $i <= 500; $i++) {    $sql = 'INSERT INTO test VALUES (2)';    mysqli_query($link, $sql);}mysqli_close($link); // 关闭连接$m_end_time = microtime(true);$res2 = $m_end_time - $p_start_time; // MySQL 连接方式耗时var_dump($res, '<br />', $res2);if ($res > $res2) {    echo 'PDO 连接数据库写入速度是 MySQL 的' . round($res2 / $res) . '倍';} else {    echo 'MySQL 连接数据库写入速度是 PDO 的' . round($res2 / $res) . '倍';}


服务器软件 网络工具 网站工具 服务器教程 服务器知识 服务器技术 服务器之家 vps教程 vps是什么

本文标题:PDO 与 MySQLi 二者效率简单比较 - MySQL中文参考手册 - 服务器教程_服务器技术_服务器知识_vps教程
本文地址:https://www.helloaliyun.com/tutorial/528.html

相关文章

  • CentOS 7 常用命令(系统关机、重启以及登出)

    关机:(系统的关机、重启以及登出 ) # 关闭系统(1)[root@localhost ~]# shutdown -h now # 关闭系统(2)[root@localhost ~]# init 0 # 关闭系统(3)[root@localhost ~]# telinit 0 # 按预定时间关闭系统[root@localhost...

    2019-12-07 服务器教程
  • linux重启命令 reboot与shutdown -r now的区别与联系

    在linux命令中reboot是重新启动,shutdown -r now是立即停止然后重新启动,都说他们两个是一样的,其实是有一定的区别的。shutdown命令可以安全地关闭或重启Linux系统,它在系统关闭之前给系统上的所有登录用户提示一条警告...

    2019-12-07 服务器教程
  • CentOS 7 如何使用命令重启或关机

    安装GNOME的朋友们首先切换到字符界面。切换到字符界面的方法如下: 先登陆进入系统,进入图形化界面,然后按Ctrl+Alt+F6(笔记本的是Ctrl+Alt+shift+Fn),进入字符界面。关机命令:shutdown或poweroffshutdown:shutdown -h now...

    2019-12-07 服务器教程
  • CentOS 7 正确关机重启的命令方法

    linux主要用于服务器领域,而在服务器上执行一项服务是永无止境的,除非遇到特殊情况,否则不会关机。和Windows不同,在linux系统下,很多进程是在后台执行的。在屏幕背后,可能有很多人同时在工作。如果直接按下电源的按钮,其他...

    2019-12-07 服务器教程
  • CentOS下的yum upgrade和yum update区别,没事别乱用!

    说明:生产环境对软件版本和内核版本要求非常精确,别没事有事随便的进行yum update操作!!!!!!!!!yum update: 升级所有包同时也升级软件和系统内核yum upgrade:只升级所有包,不升级软件和系统内核...

    2019-12-07 服务器教程
你可能感兴趣
热门浏览