之前遇到个问题,需要将一个文件夹中的所有文件名取出并 存入到数据库中。
采用php脚本测试,读取一个文件名,就立即存储到数据库中,结果花了我230多秒的时间,速度实在太慢!
原因分析:insert 语句被执行了6000次,导致速度特别慢!
改进方法:1、用php脚本 将 所有的文件名都存入到一个文本文件中filename.txt(一个文件名占一行),实测脚本执行时间 1.5262秒。
2、用php的fgets()函数取出filename.txt中的每一行数据,保存到buffer数组中,将buffer数组写入到一条insert语句中,
执行一次insert语句,实测脚本执行时间 0.0629秒。
代码1的功能是提取目录test下的文件名,并将其保存到“filename.txt”中如下:
<?php
$st=microtime_float();//自定义函数,在代码2中可见。
$cout=0;$dir="e:/py

本文通过实例分析,展示了使用PHP处理大量数据时,避免频繁执行INSERT语句导致的效率低下问题。通过将文件名批量写入文本文件,再读取文件内容一次性插入数据库,显著提高了数据导入速度,从230秒降至0.0629秒。
最低0.47元/天 解锁文章
5215

被折叠的 条评论
为什么被折叠?



