来源:转载 发布时间:2018-08-13 11:50:31 阅读量:724
本篇文章给大家带来的内容是关于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中文网其它相关文章!