本篇文章给大家带来的内容是关于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('删除轮播图失败'); } }
相关推荐:
thinkphp5中belongsToMany() 模块名称的命名问题解决
以上是thinkphp5中如何删除数据库以及同时上传到服务器上的文件的详细内容。更多信息请关注PHP中文网其他相关文章!