tp5文件上传实现缩略图+水印的功能(参考)
2024-10-20 00:11:08
public function AddNews(){
$data = Request::instance()->param();
//接收文件
$file = request()->file('img');
//上传
$info = $file->move(ROOT_PATH . 'public' . DS . 'static' . DS . 'uploads');
if($info){
//获取文件名字
$path = $info->getSaveName();
//拼接一下图片绝对路径
$last_path = ROOT_PATH . 'public' . DS . 'static' . DS . 'uploads'.DS.$path;
}else{
$path = null;
$last_path = null;
} if($last_path){
//打开原图
$image = \think\Image::open($last_path);
//生成缩略图
$thumb_path = rand().'.jpg';
$image->thumb(10, 10)->save(ROOT_PATH . 'public' . DS . 'static' . DS .'thumb'.DS.$thumb_path); } if($last_path){
//打开图片
$image = \think\Image::open($last_path);
//生成水印
$water_path = ROOT_PATH . 'public' . DS . 'static' . DS .'waters'.DS.rand().'.jpg';
$image->text('刘桂池',ROOT_PATH . 'public' . DS .'ttf'.DS.'fangzheng.ttf',20,'#00000')->save($water_path);
} //拼接数据入库
$arr['title'] = $data['title'];
$arr['t_name'] = $data['t_name'];
$arr['img'] = $path;
$arr['content'] = $data['news_content'];
$arr['thumb'] = empty($thumb_path)? null : $thumb_path; if(Db::table('d13')->insert($arr)){
echo "成功";
}else{
echo "失败";
} }
最新文章
- ClownFish:比手写代码还快的通用数据访问层
- 如何使用AssemblyInfo中的Attribute?
- 【转载】如何在Ubuntu上安装LAMP服务器系统?
- c++ 标准库的各种容器(vector,deque,map,set,unordered_map,unordered_set,list)的性能考虑
- 简单的优化处理 By LINQ TO SQL
- APT攻击
- CodeForcesGym 100753B Bounty Hunter II 二分图最小路径覆盖
- jQuery动态效果实例
- Android-The specified child already has a parent. You must call removeView() on the child's parent first.
- jboss初体验
- 频繁更换ip会影响SEO优化吗?
- 机器学习之Adaboost (自适应增强)算法
- promise源码解析
- Intellij idea安装
- 通过chrome console 快速获取网页连接
- Centos下堡垒机Jumpserver V3.0环境部署完整记录(2)-配置篇
- selenium之测试卫星资料页面操作(元素遍历)
- vuejs实现瀑布流布局(三)
- 使用PHPExcel实现数据批量导入到数据库
- STM32各个文件介绍、uCOSII文件介绍