laravel删除文件

一、总结

一句话总结:

1、注意disk:disk决定路径
2、删单个文件的时候就用删单个文件的方式,别用删多个文件的方式(也就是参数别数组)
public function index()
{
// 取到磁盘实例
$disk = Storage::disk('local'); // 删除单条文件
$disk->delete('test.txt');
// 删除多条文件
$disk->delete(['test22.txt', 'icon.jpg']);
}

1、laravel中disks的根路径写法?

base_path就是根目录:'root' => base_path('')
'disks' => [
'local' => [
'driver' => 'local',
'root' => base_path(''),
],
],

二、Laravel框架 -- 自定义文件上传目录之删除文件

转自或参考:Laravel框架 -- 自定义文件上传目录之删除文件
https://blog.csdn.net/Hinsion/article/details/81671486

Laravel框架的上传文件目录是默认在 storage/app/public ,在一般情况下,我是会在根目录上重新创建一个目录(uploads)来存储我们上传的文件。
       下面切入正题,我们想在上传成功的文件夹中删除指定的文件,那么,我们首先就要设置一个文件的内容:config/filesystems.php ,把里面的内容更改为:

'disks' => [

    'local' => [
'driver' => 'local',
'root' => base_path(''),
], 'public' => [
'driver' => 'local',
'root' => base_path(),
'url' => env('APP_URL').'/uploads',
'visibility' => 'uploads',
], 's3' => [
'driver' => 's3',
'key' => env('AWS_KEY'),
'secret' => env('AWS_SECRET'),
'region' => env('AWS_REGION'),
'bucket' => env('AWS_BUCKET'),
], ],

注:base_path就是根目录的意思(不是很会的小伙伴要注意一下的)。

修改成功后保存,然后进行下一步操作。
       下一步,我们进入控制器,首先,我们需要获取到我们想删除文件的路径,这里我就不展示了,大家都应该知道怎么获取的,下面这个示例,我是直接把路径写出来的,方便大伙了解。

$data = '/uploads/2018-08-14/file/1491628685130.zip';
$re = Storage::delete($data);
dd($re);

打印出来的值应为 true ,如果是显示 false 的话,那么请检查你的目录是否存在该文件,其次就是上面的配置文件修改的代码是否写错,再之就是控制器里获取的路径是否正确。
       补充,如果想删除多个文件,那么在delete里面以数组的形式写就可以了。

$data = '/uploads/2018-08-14/file/1491628685130.zip';
$photo = '/uploads/2018-08-14/photo/1491628669760.jpg';
$re = Storage::delete([$data, $photo]);
dd($re);
 

laravel删除文件的更多相关文章

  1. laravel 删除一条migration后要执行composer命令

    Laravel 删除一条migration 字数29 阅读30 评论0 喜欢0 如果迁移已经执行,先回滚php artisan migrate:rollback 然后删除迁移文件,运行composer ...

  2. Laravel 的文件存储 - Storage

    记录一下 Laravel Storage 的常见用法 内容写入磁盘文件 > php artisan tinker >>> use Illuminate\Support\Faca ...

  3. Linux下删除文件的原理

    Linux下文件删除的原理 Lniux下控制文件真正被删除的计数器 Linux是link的数量来控制文件删除的.只有当一个文件不存在任何link的时候,这个文件才会被删除.一般来讲,每个文件都有两个l ...

  4. Java 代码完成删除文件、文件夹操作

    import java.io.File;/** * 删除文件和目录 * */public class DeleteFileUtil {    /**     * 删除文件,可以是文件或文件夹     ...

  5. 教你一招:解决Win10 win7 删除文件或文件夹时提示“找不到该项目”

    问题很怪异,解决的办法却很简单. 首先,分析问题 使用不可显示ASCII字符或采用UNICODE字符方法创建的文件或文件夹: 名称中含有..等特殊符号文件或文件夹名称不符合Windows命名规范或建立 ...

  6. Win7中怎么不经确认直接删除文件至回收站

    Win7中怎么不经确认直接删除文件至回收站.. 1.双击桌面回收站的图标,进入回收站后,在空白处点击右键,选择属性:2.在回收站的属性对话框,最下边,把"显示删除确认对话框”前边的√去掉,应 ...

  7. awk删除文件第一列

    awk删除文件第一列 1.采用awk awk '{$1="";print $0}' file 2.采用sed sed -e 's/[^]* //' file sort -R fil ...

  8. dos 下删除文件、文件夹

    删除文件 /p 删除每一个文件之前提示确认/f 强制删除只读文件 /s 从当前目录及所有子目录删除指定文件/q 安静模式.删除全局通配符时,不要求确认/a 根据属性选择要删除的文件 指定下列文件属性中 ...

  9. win10 系统怎么获取最高管理员权限删除文件

    http://www.xitongcity.com/jiaocheng/win8_content_3473.html 很多win8.1系统用户在对磁盘文件进行清理时,经常会遇到“文件夹访问被拒绝,您需 ...

随机推荐

  1. iOS静态库相关-封装lib

    来源:http://blog.csdn.net/zsomsom/article/details/9163635 Library介绍 基本知识 在实际的编程过程中,通常会把一些公用函数制成函数库,供其它 ...

  2. CDH构建大数据平台-使用自建的镜像地址安装Cloudera Manager

    CDH构建大数据平台-使用自建的镜像地址安装Cloudera Manager 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任.   一.搭建CM私有仓库 详情请参考我的笔记: http ...

  3. chrome DevTools功能介绍

  4. SOA=SOME/IP?你低估了这件事 | 第二弹

    ​        哈喽,大家好,第二弹的时间到~上文书说到v-SOA可以通过SOC.SORS和SOS来分解落地,第一弹中已经聊了SOC的实现,这部分也是国内各大OEM正在经历的阶段,第二弹,我们继续聊 ...

  5. Java精通并发-死锁检测与相关工具详解

    关于死锁其实在之前https://www.cnblogs.com/webor2006/p/10659938.html的jvm学习中已经详细举过例子了,不过这里再来复习一下,另外是从并发这个专题领域的角 ...

  6. MyBatis_tp50_动态sql_sql标签_抽取可重用的sql片段_使用include标签进行引用

    笔记要点出错分析与总结 include内部使用自定的属性,之能使用$ {}来取值 ,#{}不能用 工程组织数据库组织0.重新修改Bean类1.定义接口 public interface Employe ...

  7. readme.txt 为什么我们不重视

    1.很多源码项目下面都有编译说明,readme 2.我们的电脑上每个目录都有很多文件,我们似乎可以建立一个readme.txt 知道是什么 节约一些时间

  8. 【转】MarkDown添加图片的三种方式

    原文:https://www.jianshu.com/p/280c6a6f2594 ----------------------------------------------------- 插图最基 ...

  9. scala 基础知识 FAQ

    问题1: 抽象成员初始化规则 ① 父类先初始化 ② 在初始化的过程中,如果 val 发生重写,只有最后一个重写生效.前面的会变成零值,后面的会直接继承. 参考资料:https://docs.scala ...

  10. 五.Protobuf3 枚举

    Protobuf3 枚举 定义消息类型时,您可能希望它的一个字段有一个预定义的值列表.例如,假设您希望为每个SearchRequest添加一个corpus字段,其中语料库可以是UNIVERSAL.WE ...