如何检查文件名中是否存在带有特定字符串的文件?

Jos*_*ber 0 php

我希望能够在目录中搜索以特定字符串开头的文件,例如:

- foo
  - 1_foo.jpg
  - 2_bar.png
Run Code Online (Sandbox Code Playgroud)

我将如何检查目录 foo 中是否有以“1_”开头的文件?

我试过像这样使用 file_exists 和 preg_match:
if (file_exists("foo/" . preg_match("/^1_/", "foo/*"))) echo "File exists.";
但这不起作用。

thr*_*ee3 5

听起来你需要这个glob()功能。glob() 函数根据 libc glob() 函数使用的规则搜索所有匹配模式的路径名,这类似于普通 shell 使用的规则。

<?php
foreach (glob('1_*.*') as $filename) {
    echo "$filename\n";
}
?>
Run Code Online (Sandbox Code Playgroud)

上面的例子将输出类似于:

1_foo.png
1_bar.png
1_something.png
Run Code Online (Sandbox Code Playgroud)