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

最近一個項目中,有一個讀取某個文件夾下所有文件的功能。使用了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