ASP和PHP文件操作速度的对比

所属分类: 网络编程 / ASP编程 阅读数: 1633
收藏 0 赞 0 分享

最近一个项目中,有一个读取某个文件夹下所有文件的功能。使用了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下多个域名后缀同时查询的域名查询系统

asp下多个域名后缀同时查询的域名查询系统
收藏 0 赞 0 分享

用ASP实现对ORACLE数据库的操作

用ASP实现对ORACLE数据库的操作
收藏 0 赞 0 分享

用ASP做的DNS LOOKUP程序

用ASP做的DNS LOOKUP程序
收藏 0 赞 0 分享

用存储过程、GetRows()、抽取10万条数据的速度测试

用存储过程、GetRows()、抽取10万条数据的速度测试
收藏 0 赞 0 分享

asp中利用CSW中文分词组件来实现自己网站的内容关键词自动提取

asp中利用CSW中文分词组件来实现自己网站的内容关键词自动提取
收藏 0 赞 0 分享

ASP+JS三级联动下拉菜单[调用数据库数据]

ASP+JS三级联动下拉菜单[调用数据库数据]
收藏 0 赞 0 分享

用ASP实现距指定日期的倒记时程序源码

用ASP实现距指定日期的倒记时程序源码
收藏 0 赞 0 分享

详细讲解ASP脚本循环语句

详细讲解ASP脚本循环语句
收藏 0 赞 0 分享

ASP中如何判断一个字符是不是汉字

ASP中如何判断一个字符是不是汉字
收藏 0 赞 0 分享

将ACCESS转化成SQL2000要注意的问题

很多朋友想用SQL2000数据库的编程方法,但是却又苦于自己是学ACCESS的,对SQL只是一点点的了解而已,这里我给大家提供以下参考---将ACCESS转化成SQL2000的方法和注意事项
收藏 0 赞 0 分享
查看更多