PHP使用PDO操作mysql读取数据步骤详解
这次给大家带来PHP使用PDO操作mysql读取数据步骤详解,PHP使用PDO操作mysql读取数据的注意事项有哪些,下面就是实战案例,一起来看一下。
前言
本文主要介绍了关于PHP利用PDO从mysql读取大量数据处理的相关内容,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍吧。
环境
mysql: 5.6.34
php: 5.6
nginx: php-fpm
适用场景
需要处理一定数据集业务
从mysql读取一定数据的业务导出
一次需要处理一定的mysql业务操作更新删除等
更多需要处理一定数据集的操作
pdo 关键设置
$dbh = new \PDO($dsn, $user, $pass); # 关键设置,如果不设置,php依旧会从pdo一次取出数据到php $dbh->setAttribute(\PDO::MYSQL_ATTR_USE_BUFFERED_QUERY, false); //perpare里的游标属性不是必须的 $sth = $dbh->prepare("SELECT * FROM `order`", array(\PDO::ATTR_CURSOR => \PDO::CURSOR_SCROLL)); $sth->execute();
生成器
生成器,迭代数据操作
本生成器可省略
尝试代码
class Test { public function test() { set_time_limit(0); $dbms='mysql'; //数据库类型 $host=C('DB_HOST'); //数据库主机名 $dbName=C('DB_NAME'); //使用的数据库 $user=C('DB_USER'); //数据库连接用户名 $pass=C('DB_PWD'); //对应的密码 $dsn="$dbms:host=$host;dbname=$dbName"; $dbh = new \PDO($dsn, $user, $pass); $dbh->setAttribute(\PDO::MYSQL_ATTR_USE_BUFFERED_QUERY, false); $sth = $dbh->prepare("SELECT * FROM `order`"); $sth->execute(); $i = 0; $newLine = PHP_SAPI == 'cli' ? "\n" : '<br />'; foreach ($this->cursor($sth) as $row) { // var_dump($row); echo $row['id'] . $newLine; $i++; } echo "消耗内存:" . (memory_get_usage() / 1024 / 1024) . "M" . $newLine; echo "处理数据行数:" . $i . $newLine; echo "success"; } public function cursor($sth) { while($row = $sth->fetch(\PDO::FETCH_ASSOC)) { yield $row; } } } $test = new Test(); $test->test();
输出
1 ... //省略部分id 804288 消耗内存:"0.34918212890625M 处理数据行数:254062 success
相信看了本文案例你已经掌握了方法,更多精彩请关注php中文网其它相关文章!
推荐阅读:
以上是PHP使用PDO操作mysql读取数据步骤详解的详细内容。更多信息请关注PHP中文网其他相关文章!

热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

AI Hentai Generator
免费生成ai无尽的。

热门文章

热工具

记事本++7.3.1
好用且免费的代码编辑器

SublimeText3汉化版
中文版,非常好用

禅工作室 13.0.1
功能强大的PHP集成开发环境

Dreamweaver CS6
视觉化网页开发工具

SublimeText3 Mac版
神级代码编辑软件(SublimeText3)

热门话题

PHP的未来将通过适应新技术趋势和引入创新特性来实现:1)适应云计算、容器化和微服务架构,支持Docker和Kubernetes;2)引入JIT编译器和枚举类型,提升性能和数据处理效率;3)持续优化性能和推广最佳实践。

PHP和Python各有优势,选择应基于项目需求。1.PHP适合web开发,语法简单,执行效率高。2.Python适用于数据科学和机器学习,语法简洁,库丰富。

MySQL是一个开源的关系型数据库管理系统。1)创建数据库和表:使用CREATEDATABASE和CREATETABLE命令。2)基本操作:INSERT、UPDATE、DELETE和SELECT。3)高级操作:JOIN、子查询和事务处理。4)调试技巧:检查语法、数据类型和权限。5)优化建议:使用索引、避免SELECT*和使用事务。

可以通过以下步骤打开 phpMyAdmin:1. 登录网站控制面板;2. 找到并点击 phpMyAdmin 图标;3. 输入 MySQL 凭据;4. 点击 "登录"。

MySQL和SQL是开发者必备技能。1.MySQL是开源的关系型数据库管理系统,SQL是用于管理和操作数据库的标准语言。2.MySQL通过高效的数据存储和检索功能支持多种存储引擎,SQL通过简单语句完成复杂数据操作。3.使用示例包括基本查询和高级查询,如按条件过滤和排序。4.常见错误包括语法错误和性能问题,可通过检查SQL语句和使用EXPLAIN命令优化。5.性能优化技巧包括使用索引、避免全表扫描、优化JOIN操作和提升代码可读性。

PHP不是在消亡,而是在不断适应和进化。1)PHP从1994年起经历多次版本迭代,适应新技术趋势。2)目前广泛应用于电子商务、内容管理系统等领域。3)PHP8引入JIT编译器等功能,提升性能和现代化。4)使用OPcache和遵循PSR-12标准可优化性能和代码质量。

Redis 使用单线程架构,以提供高性能、简单性和一致性。它利用 I/O 多路复用、事件循环、非阻塞 I/O 和共享内存来提高并发性,但同时存在并发性受限、单点故障和不适合写密集型工作负载的局限性。

如何使用 phpMyAdmin 连接到 MySQL?访问 phpMyAdmin 的 URL,通常为 http://localhost/phpmyadmin 或 http://[您的服务器 IP 地址]/phpmyadmin。输入您的 MySQL 用户名和密码。选择您要连接的数据库。点击 "连接" 按钮以建立连接。
