thinkphp5中如何删除数据库以及同时上传到服务器上的文件

不言
不言 原创
2023-04-03 18:28:02 1899浏览

本篇文章给大家带来的内容是关于thinkphp5中如何删除数据库以及同时上传到服务器上的文件,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。

在TP5中怎样同时删除数据库和上传到服务器上的文件:

模型中定义方法如下

<?php

namespace app\admin\model;
use think\Model;

class Pic extends Model
{ 
  
	public function unlink($path)
	{
		return  is_file($path) && unlink($path);
	}

}

然后在控制器中调用你的方法,建议$path在控制器中用绝对路径,

在控制器中引入空间类元素:

use think\File;
use app\admin\model\Pic as PicModel;//防止类名字重复报错,起一个别名

然后在方法里实例化,然后调用方法即可:

             public function del()
	    {		
	       $id=input('id');//返回的结果为获取的id
	       $lunbotu=db('lunbotu')->find($id);//获取一条数据,这里可以dump()数据,返回结果为数组,访问数组中文件的存放信息的字段,这里是Pic
	       $path='../public/static/uploads/'.$lunbotu['Pic'];//定义文件存放的路径
	       $unlink=new PicModel();//实例化
		if($unlink->unlink($path) && db('lunbotu')->delete(input('id')))
		{
		    return redirect('pic');//重定向到你想要的界面
		}
		else
		{
	        	$this->error('删除轮播图失败');
		}
	    }

相关推荐:

PHP中迭代器以及生成器的分析以及优缺点的介绍

thinkphp5中belongsToMany() 模块名称的命名问题解决

以上就是thinkphp5中如何删除数据库以及同时上传到服务器上的文件的详细内容,更多请关注php中文网其它相关文章!

声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。