php:扫描目录只是为了文件(文件名+扩展名)

时间:2017-11-10 14:27:47

标签: php

我想用php函数扫描一个目录,以查明是否存在与数据库中特定文件名对应的文件。当文件不作为数据库条目存在(从数据库中删除)时,也应从目录中删除相应的文件。我的问题是:scandir()不仅返回文件。基本上我需要can函数才能在foreach中使用它的返回值。

1 个答案:

答案 0 :(得分:0)

当然,您也可以使用function recursiveDirectoryIterator($path) { foreach (new RecursiveIteratorIterator(new RecursiveDirectoryIterator($path)) as $file) { if (!$file->isDir()) { yield $file->getFilename(); // You can add $file->getFileExtension() too } } } 。我建议使用RecursiveIteratorIteratorRecursiveDirectoryIterator

示例代码:

string s = "sdfsadf asdf dsa fds";
int i = s.LastIndexOf(' ');
if (i > 0)
{
   var result = s.Substring(0, i);
   //... 
   //res.Dump(); // Linqpad
}

通常情况下,我只是将其留作评论,但我觉得大多数人不经常使用RecursiveIterator和DirecotryIterator,所以一个例子是有序的。