获取其名称遵循php模式的文件夹的其他方法

时间:2010-06-21 12:07:29

标签: php filesystems

我的操作系统环境是linux。

我在这个文件夹中有一个php文件 - / var / www / html(比如说... test.php)

我在同一目录中也有一个名为DATA_SOMENUMBERHERE的文件夹。

在test.php里面,我需要找出SOMENUMBEREHERE。

换句话说,找到名称以DATA_开头的文件夹并获取剩余部分 字符串。

一种方法是,获取该目录中的所有文件夹名称并循环遍历它们并查找。

但还有另外一种方法吗?我可以将某种正则表达式传递给某个文件系统函数调用,以便获得与该模式匹配的所有文件夹名称吗?

单个函数调用将是理想的。但如果没有,我可以循环播放。

安全假设:

  • 总会有一个文件夹 以DATA _

  • 开头
  • 只有一个文件夹 以DATA _

  • 开头
  • SOMENUMBERHERE将不断变化。

1 个答案:

答案 0 :(得分:3)

查看glob(),它返回一个与模式匹配的文件/目录数组。 GLOB_ONLYDIR选项允许您仅搜索与模式匹配的目录。例如:

$dirs = glob('DATA_*', GLOB_ONLYDIR);
//$dirs[0] now holds the name of the directory.

如果您非常确定会有一个目录,您也可以使用list来稍微缩短代码。

list($dir) = glob('DATA_*', GLOB_ONLYDIR);
//$dir now holds the name of the directory.