【问题标题】:Delete file from a specific directory in Laravel local storage从 Laravel 本地存储中的特定目录删除文件
【发布时间】:2018-01-18 09:36:18
【问题描述】:

我将文件存储在本地存储中。所以,在/storage/app/public 目录中。

我将我的文件存储在/storage/app/public/userId/images;

我使用了 php artisan storage:link ,所以我可以在视图中访问该文件,在 /public/storage/userId/images 中拥有此文件夹的快捷方式 在该路径内,我有 2 张图片 - test.jpgtest2.jpg

我在 Laravel 文档中找不到回复,如何从 /public/storage/userId/images 中删除文件 test.jpg

我试过这样:

$path = 'public/' . $id . '/diploma';
$files =  Storage::files($path);
return $files;

它返回我:

[
"public/303030/images/test.jpg"
"public/303030/images/test2.jpg"
]

现在,我如何在该数组上调用Storage::delete('test.jpg')

【问题讨论】:

    标签: php laravel file


    【解决方案1】:

    删除图片有多种方式

    //In laravel 
    File::delete($image);
    //for specific directory
    File::delete('images/' . 'image1.jpg');
    

    其他方式(简单PHP)

    //Simple PHP
    unlink(public_path('storage/image/delete'));
    

    如果你想删除多于 1 个图像而不是

    Storage::delete(['file1.jpg', 'file2.jpg']);
    //or
    File::delete($image1, $image2, $image3);
    

    有关Delete File in Laravel的更多详细信息

    【讨论】:

    • 所以,如果$image = 'test.jpg'File::delete($image) 如何知道要删除的图像以及从每个文件夹中删除的图像?附言请检查我的编辑
    • $path = '/public/' 。 $userId 。 '/images/test.jpg' ;存储::delete('$path);现在它起作用了。我按照您的方式尝试过,但在添加 /public 之后它也可以工作。感谢您的回答!
    • Storage::disk('public')->delete('img_001.png'); 这个工作
    【解决方案2】:

    使用Storage::delete()delete 方法接受单个文件名或要从磁盘中删除的文件数组。

    Storage::delete($file_to_delete);
    

    也许你想做一些类似的事情-

    $files =  Storage::files($path);
    Storage::delete($files);
    

    【讨论】:

    • 所以,如果 $image = 'test.jpg'。 Storage::delete($image) 如何知道要删除的图像以及从每个文件夹中删除的图像?附言请检查我的编辑
    • 你需要用路径指定文件名
    • $path = '/public/' 。 $userId 。 '/images/test.jpg' ;存储::delete('$path);现在它起作用了。我按照您的方式尝试过,但是在添加 /public 之后它也可以工作。感谢您的回答!
    • @priMo-ex3m 很高兴它有帮助 :),接受对你有帮助的那个,这样它在未来对其他人有用
    • 当然,只是等待超时。我会接受第一个,只是因为它早先得到了回答。但实际上,答案是等价的。感谢您的帮助!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多