php – PDO fetchall()性能考虑因素?
发布时间:2020-12-13 17:53:52 所属栏目:PHP教程 来源:网络整理
导读:在阅读了几篇关于 PHP的PDO fetchall()函数的性能影响的文章后,我很好奇是否有另一种方法可以在不调用fetchall()的情况下完成相同的结果. 为了解释,大多数人认为fetchall()往往是资源密集型的.就我而言,我认为这不会是一个太大的问题.是的,我不得不从我的数
在阅读了几篇关于
PHP的PDO fetchall()函数的性能影响的文章后,我很好奇是否有另一种方法可以在不调用fetchall()的情况下完成相同的结果.
为了解释,大多数人认为fetchall()往往是资源密集型的.就我而言,我认为这不会是一个太大的问题.是的,我不得不从我的数据库中提取整个表并将其显示给用户,但最多只能有100行;我不相信这将是一个问题.但是,假设我需要提取100,000行,那么什么是更优化的解决方案呢?
假设,如果需要在单个响应中输出所有100,则应将PDO :: MYSQL_ATTR_USE_BUFFERED_QUERY设置为false,执行查询,并使用
fetch一次迭代一行结果集.详细说明,php缓冲整个结果集,无论如何如果PDO :: MYSQL_ATTR_USE_BUFFERED_QUERY设置为true,是否调用fetchAll().
好处是您可以大幅减少脚本的最大内存消耗,并且可以更快地开始流式输出,尽管完成的总时间可能需要或可能不会更长. 我忽略了在极端情况下你应该考虑的其他事情,比如输出缓冲等…… (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |