首页  >  文章  >  后端开发  >  thinkphp5中如何删除数据库以及同时上传到服务器上的文件

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

不言
不言原创
2018-08-11 17:06:222317浏览

本篇文章给大家带来的内容是关于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(&#39;id&#39;);//返回的结果为获取的id
	       $lunbotu=db(&#39;lunbotu&#39;)->find($id);//获取一条数据,这里可以dump()数据,返回结果为数组,访问数组中文件的存放信息的字段,这里是Pic
	       $path=&#39;../public/static/uploads/&#39;.$lunbotu[&#39;Pic&#39;];//定义文件存放的路径
	       $unlink=new PicModel();//实例化
		if($unlink->unlink($path) && db(&#39;lunbotu&#39;)->delete(input(&#39;id&#39;)))
		{
		    return redirect(&#39;pic&#39;);//重定向到你想要的界面
		}
		else
		{
	        	$this->error(&#39;删除轮播图失败&#39;);
		}
	    }

 相关推荐:

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

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

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

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