检查文件存在于PHP中的正则表达式

时间:2014-05-23 21:06:56

标签: php regex

我在服务器上上传了id为customer的图片。但我不想两次上传多种格式的文件(例如,对于客户ID = 1应该只有一个图像是1.jpg或1.png)

如何在更新图像时全局检查该文件是否已存在?

我可以在没有文件扩展名的情况下查看文件吗?

我正在使用此命令检查文件。

file_exists('./media/customer-id/'.$cus_id);

2 个答案:

答案 0 :(得分:1)

您可以使用glob()来计算结果。

function patternExists($pattern) {
    return count(glob($pattern)) > 0;
}

并像这样使用

if (patternExists("./media/customer-id/".$cus_id."*")) {
    // bad!
}

答案 1 :(得分:0)

使用scandir()运行ls like命令并接收目录内容的数组。然后遍历文件,看看是否有任何东西与客户ID匹配。

$exists = false;
foreach(scandir('./media/customer-id') as $file) {
    if(preg_match('/^' . $customer_id . '\.$/', $file)) {
        $exists = true;
        break;
    }
}