检查文件是否与给定目录中的通配符规范匹配,并使用 PHP 进行


Check if a file matches a wildcarded spec, in a given directory, with PHP

我有一个文件上传到的目录,如果文件存在,我希望能够显示下载链接。但是,该文件必须与特定模式匹配,因为这是上传者的标识符。

该模式以/ClientFiles/开头,然后需要查找以用户 ID 开头的所有文件。例如:/ClientFiles/123-UploadData.xls

因此,无论之后是什么,它都需要查找 ClientFiles 目录并找到以"123-"开头的所有文件。

干杯

要按某种模式查找文件,您可以使用 glob,然后使用 is_readable 检查是否可以读取文件。

$files = array();    
foreach(glob($dirname . DIRECTORY_SEPARATOR . $clientId . '-*' as $file) {
    if(is_readable($file) {
        $files[] = $file;
    }
}

只需使用 file_exists() 函数

php 有一个函数file_exists。 使用它来制定一些关于是否显示链接的逻辑。