📜  断言文件存在 laravel - PHP (1)

📅  最后修改于: 2023-12-03 15:10:24.362000             🧑  作者: Mango

断言文件存在 Laravel - PHP

在 Laravel 中,我们可以使用 Storage Facade 来操作文件系统。但是在操作前,我们需要先判断文件是否存在以避免出现错误。

使用 exists() 方法

Storage Facade 提供了 exists() 方法来判断文件是否存在,返回 truefalse

use Illuminate\Support\Facades\Storage;

if (Storage::exists('file.txt')) {
    // 文件存在,执行操作
} else {
    // 文件不存在,进行错误处理
}

我们只需要传入文件的相对路径作为参数即可。如果文件存在,则执行操作;如果文件不存在,则进行错误处理。

使用断言 assertExists() 方法

为了方便起见,Laravel 8.x 版本开始提供了 assertExists() 方法,可以在测试代码中使用。

use Illuminate\Foundation\Testing\Concerns\InteractsWithFiles;

Storage::disk('public')->assertExists('file.jpg');

通过该方法,我们可以方便地对文件是否存在进行断言。如果文件存在,测试通过;如果文件不存在,测试失败。

总结

对文件是否存在的判断是文件操作中必不可少的一环。使用 Storage Facade 提供的 exists() 方法可以很方便地实现;在测试代码中,我们可以使用 assertExists() 方法进行断言。