首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >哪个更快: glob()和opendir()

哪个更快: glob()和opendir()
EN

Stack Overflow用户
提问于 2010-05-04 14:38:44
回答 6查看 9.6K关注 0票数 5

在读取大约1-2K的文件时,glob()opendir()之间哪个更快?

EN

回答 6

Stack Overflow用户

回答已采纳

发布于 2010-05-04 14:43:57

http://code2design.com/forums/glob_vs_opendir

显然,opendir()应该(而且是)更快,因为它打开目录处理程序并让您迭代。因为glob()必须解析第一个参数,所以需要更多的时间(加上glob处理递归目录,所以它将扫描子目录,这将增加执行时间。

票数 10
EN

Stack Overflow用户

发布于 2010-05-04 14:53:58

globopendir做不同的事情。glob查找与模式匹配的路径名并以数组形式返回这些路径名,而opendir仅返回目录句柄。要获得与glob相同的结果,您必须调用额外的函数,在进行基准测试时必须考虑这些函数,特别是在包括模式匹配的情况下。

Bill Karwin最近写了一篇关于这方面的文章。请参见:

  • http://www.phparch.com/2010/04/28/putting-glob-to-the-test/
票数 9
EN

Stack Overflow用户

发布于 2010-05-04 14:40:48

不确定这是否是完美的比较,但是glob()允许您合并类似于shell的模式,其中opendir通过使其更快而直接存在于目录中。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2763290

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档