内容简介:最近一个项目中,有一个读取某个文件夹下所有文件的功能。使用了ThinkPHP + layui,本地测试没有问题,到客户哪里发现速度奇慢,需要10秒以上才能读取完毕。 经沟通发现一个文件夹有1000+ 个文件,客户之前有一套asp的老系统,1000多个 文件也能实现秒开。。。一时竟然没有头绪,难道 PHP 不如 ASP快 ??因为项目中代码太多,编写单独的代码测试。files/1000目录存放了 1428个文件测试。
最近一个项目中,有一个读取某个文件夹下所有文件的功能。使用了ThinkPHP + layui,本地测试没有问题,到客户哪里发现速度奇慢,需要10秒以上才能读取完毕。 经沟通发现一个文件夹有1000+ 个文件,客户之前有一套asp的老系统,1000多个 文件也能实现秒开。。。
一时竟然没有头绪,难道 PHP 不如 ASP快 ??因为项目中代码太多,编写单独的代码测试。files/1000目录存放了 1428个文件测试。
test.asp的源码如下:
set fso = server.createobject("Scripting.FileSystemObject") set fpo = fso.getFolder(server.mappath("files/1000")) for each x in fpo.files response.write x.name & "<br />" next
test.php的源码如下:
<?php foreach( scandir('files/1000') as $f ){ echo "${f}<br>"; }
Windows文名是GBK编码的,想要前后端分离,将文件名通过JSON返回前台,还需要将文件名改为UTF-8编码,为了公平,对比加上UTF8转换时间。test_utf8.php的源码如下:
<?php foreach( scandir('files/1000') as $f ){ $f = mb_convert_encoding($f, 'utf-8', 'gbk'); echo "${f}<br>"; }
即使加个转码时间,PHP还是要快1倍。
排除语言的问题了。最终发现 layui.table 列表数据一多,就会渲染超慢,改为 Vue后 解决。
以上所述就是小编给大家介绍的《ASP 和 PHP 文件操作速度的对比》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!
猜你喜欢:- HBase相对Hive查询速度快的对比
- 随机森林算法 4 种实现方法对比测试:DolphinDB 速度最快,XGBoost 表现最差
- 扣丁学堂大数据开发解析HBase和Hive的查询处理速度对比
- 为了证明它的速度,我们一口气对比了 Oracle、MySQL、MariaDB、Greenplum、Apache Spark
- 通过这9个高级技巧,降低速度优化速度
- 调查:新漏洞的出现速度比安全团队的修复速度更快
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
程序是怎样跑起来的
[日] 矢泽久雄 / 李逢俊 / 人民邮电出版社 / 2015-4 / 39.00元
本书从计算机的内部结构开始讲起,以图配文的形式详细讲解了二进制、内存、数据压缩、源文件和可执行文件、操作系统和应用程序的关系、汇编语言、硬件控制方法等内容,目的是让读者了解从用户双击程序图标到程序开始运行之间到底发生了什么。同时专设了“如果是你,你会怎样介绍?”专栏,以小学生、老奶奶为对象讲解程序的运行原理,颇为有趣。本书图文并茂,通俗易懂,非常适合计算机爱好者及相关从业人员阅读。一起来看看 《程序是怎样跑起来的》 这本书的介绍吧!