日期:2014-05-17  浏览次数:20390 次

问一下关于mysqli的store_result()和PDO的fetch_all()的区别
这两个函数的功能都是一次性把结果集取回到本地吧?

那为什么store_result()在教材上写的是可以提高脚本效率,而fetch_all()是不建议使用,因为它的效率低。

为什么两个功能一样的函数,会有这么大不同呢?

谢谢!

------解决方案--------------------
你那是什么教材?
为什么要把不同的东西放在一起比较?


------解决方案--------------------
哪里一样了,PDO的fetchAll()和mysqli的fetch_all()差不多一个功能。都是将结果集全部转换为数组或对象。
但store_result()就是另一回事了:
如果需要对所有记录而不只是一小部分进行处理,可以调用mysqli_stmt对象中的store_result()方法,把所有结果一次全部传回到PHP程序中。这样做不仅更有效率,而且能减轻服务器的负担。store_result()方法是可选的,除了读取数据不改变任何东西。