PHP:根据包含unix戳的文件名,从10000个文件的目录中仅获取一个文件

布朗奇

我正在尝试扫描目录,并使用文件名排序仅获取目录中添加的最新文件

我的文件具有不同的文件名,但所有文件都带有unix_timestamp,例如:1423285600_smas293.jpg 1423285700_smas11.doc

所以我知道一种执行此操作的方法$ files = scandir($ dir,SCANDIR_SORT_DESCENDING); $ newest_file = $ files [0];

但这似乎首先将所有文件加载到数组中..如果我有100K(理论上)的文件?然后怎样呢?服务器会变慢吗?

因此,我希望将有限数量的文件扫描并检索到数组中,如果可能的话,或者其他基本上可以满足我需要的策略。

问候

卡雷尔·库巴特(Karel Kubat)

那么你可以使用opendir()readdir()目录项一个接一个,而只记得字母最大的文件名。它是什么scandir()glob()在水中做最后。这样,您不必将所有内容都加载到内存中。尽管您仍然必须遍历理论上所有的100K文件:

<?php    
$biggest = false;    
if ($fp = opendir('/tmp')) {
    while ( ($entry = readdir($fp)) )
    if (! $biggest or ($entry > $biggest) )
        $biggest = $entry;
    closedir($fp);
}
print("Biggest: " . $biggest . "\n");    
?>

最终,将您的文件按天或数周存储在文件夹中当然是更好的解决方案。当您在一个目录中创建那么多文件时,文件系统最终将陷入困境。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Python:如何仅获取目录中的第一个文件名

来自分类Dev

从目录中按字母顺序的最后一个文件中获取文件名

来自分类Dev

根据文件名与另一个文件匹配将文件移动到不同的目录中

来自分类Dev

获取包含 PHP 中另一个文件的文件的目录

来自分类Dev

递归“查找”文件名,该文件名包含另一个目录中的字符串和符号链接文件

来自分类Dev

如何在makefile中创建一个包含文本文件名和时间戳的变量?

来自分类Dev

我如何通过文件名从目录中获取最后一个文件,然后创建下一个文件?

来自分类Dev

在另一个PHP页面中获取文件名

来自分类Dev

在文件名的末尾与字符串匹配的目录中查找最后一个文件

来自分类Dev

搜索目录时,仅显示指定文件名的第一个实例

来自分类Dev

diff仅将文件名存储在另一个文件中

来自分类Dev

根据当前文件名在vim中打开另一个文件

来自分类Dev

如何根据文件名中的第一个单词移动文件?

来自分类Dev

获取目录PHP中的第一个文件

来自分类Dev

如果我有一个在另一个 php 文件中执行此操作的函数,如何获取当前文件的文件名?

来自分类Dev

如何找到文件名,文件名都在一个文件中?

来自分类Dev

Windows批处理根据文件名中的时间戳保留最新的N个文件

来自分类Dev

如何在目录的子目录中创建一个包含文件名的文本文件,并在每行前添加一个父目录名?

来自分类Dev

如何在一个步骤中从另一个目录复制文件名并在文件名中添加前缀?

来自分类Dev

脚本仅将多个文件的一个文件名输出到新文件

来自分类Dev

每天根据文件名通过批处理文件保存一个文件

来自分类Dev

文件名是一个变量

来自分类Dev

文件名是一个变量

来自分类Dev

创建一个文件名,文件名是列表中的一项

来自分类Dev

通过Unix命令在父目录下创建一个.zip文件,该文件仅包含父文件夹及其子文件夹

来自分类Dev

在文件名中包含时间戳

来自分类Dev

在 Ubuntu 的终端中找到一个文件及其在目录中的路径,文件名在 argv[2] 中给出

来自分类Dev

挂载到主机目录的Docker卷仅包含最后一个容器中的文件

来自分类Dev

Shell脚本:从一个目录中删除或移动与另一个目录中的文件名匹配的文件

Related 相关文章

  1. 1

    Python:如何仅获取目录中的第一个文件名

  2. 2

    从目录中按字母顺序的最后一个文件中获取文件名

  3. 3

    根据文件名与另一个文件匹配将文件移动到不同的目录中

  4. 4

    获取包含 PHP 中另一个文件的文件的目录

  5. 5

    递归“查找”文件名,该文件名包含另一个目录中的字符串和符号链接文件

  6. 6

    如何在makefile中创建一个包含文本文件名和时间戳的变量?

  7. 7

    我如何通过文件名从目录中获取最后一个文件,然后创建下一个文件?

  8. 8

    在另一个PHP页面中获取文件名

  9. 9

    在文件名的末尾与字符串匹配的目录中查找最后一个文件

  10. 10

    搜索目录时,仅显示指定文件名的第一个实例

  11. 11

    diff仅将文件名存储在另一个文件中

  12. 12

    根据当前文件名在vim中打开另一个文件

  13. 13

    如何根据文件名中的第一个单词移动文件?

  14. 14

    获取目录PHP中的第一个文件

  15. 15

    如果我有一个在另一个 php 文件中执行此操作的函数,如何获取当前文件的文件名?

  16. 16

    如何找到文件名,文件名都在一个文件中?

  17. 17

    Windows批处理根据文件名中的时间戳保留最新的N个文件

  18. 18

    如何在目录的子目录中创建一个包含文件名的文本文件,并在每行前添加一个父目录名?

  19. 19

    如何在一个步骤中从另一个目录复制文件名并在文件名中添加前缀?

  20. 20

    脚本仅将多个文件的一个文件名输出到新文件

  21. 21

    每天根据文件名通过批处理文件保存一个文件

  22. 22

    文件名是一个变量

  23. 23

    文件名是一个变量

  24. 24

    创建一个文件名,文件名是列表中的一项

  25. 25

    通过Unix命令在父目录下创建一个.zip文件,该文件仅包含父文件夹及其子文件夹

  26. 26

    在文件名中包含时间戳

  27. 27

    在 Ubuntu 的终端中找到一个文件及其在目录中的路径,文件名在 argv[2] 中给出

  28. 28

    挂载到主机目录的Docker卷仅包含最后一个容器中的文件

  29. 29

    Shell脚本:从一个目录中删除或移动与另一个目录中的文件名匹配的文件

热门标签

归档