mysqli vs mysql-mysqli的性能和用法很复杂

时间:2013-12-08 07:39:23

标签: php mysql mysqli

直到最近,我才使用mysql代替mysqli或POD,但因为PHP已经宣布它不支持mysql所以我决定转移到mysqli 。但我已经阅读了几篇博客/文章,每个人都说出于安全目的mysqli优于mysql,但性能明智mysql更好。如果您正在计划高流量网站,那么这种性能上的微小差异可能会导致问题。除了这个性能问题,我发现mysqli和PDO使用起来并不复杂。例如对于select函数,我们可以直接在我的sql中使用它:

 $res = mysql_query("SELECT * FROM `summary` WHERE id='35'  limit 1");
 $row = mysql_fetch_array($res);

但是在mysqli我们必须使用这个非常复杂的查询select / update / delete / insert等。有什么方法我可以使用几乎相似的mysqli代码吗?

1 个答案:

答案 0 :(得分:2)

  

如果您正在筹划高流量网站,那么这个小   性能差异可能会导致问题。

您是否真的使用您的代码对此进行了测试?在许多情况下,它最多只是微不足道的差异。所以我不担心。通常情况下,速度差异的这些可怕警告意味着需要1.5秒完成的事情现在需要1.6秒。

此外,PDO适配器仅仅是未来。这就是为什么他们允许通过ORM(对象关系映射)或直接查询准备语句(参见下面的例子)。

  

但是在mysqli中我们必须使用这个非常复杂的查询   选择/更新/删除/插入等。有什么方法我几乎可以使用   类似于mysqli的代码?

是的,你可以。 mysqli可以让您在不使用PDO结构的情况下使用pure MySQL queries

$db = new mysqli('localhost', 'user', 'pass', 'demo');
$result = $db->query("SELECT * FROM `summary` WHERE id='35'  limit 1");
while($row = $result->fetch_assoc()){
  echo '<pre>';
  print_r($row);
  echo '</pre>';
}

此外,如果您真的担心MySQL性能,那么只需定期运行类似此MySQL Tuning Primer脚本的脚本来优化MySQL安装。与在PHP中过度mysqlmysqli相比,这将提高性能。