laravel操作技巧(Laravel+Intervention实现上传图片功能示例)
类别:编程学习 浏览量:1638
时间:2022-01-24 00:18:32 laravel操作技巧
Laravel+Intervention实现上传图片功能示例本文实例讲述了Laravel+Intervention实现上传图片功能。分享给大家供大家参考,具体如下:
问题
使用Laravel上传图片
解决
安装Intervention
根据这个链接来安装https://packagist.org/packages/intervention/image
使用Intervention
根据这个文档来进行使用http://image.intervention.io/getting_started/introduction
简单修改
使用下面的代码就能实现上传图片
|
Image::make(Input::file( 'photo' ))->resize(300, 200)->save( 'foo.jpg' ); |
由于Intervention保存的时候需要指定图片的保存的文件名,所以我写了一个工具类来生成随机文件名。
|
<?php /** * Created by PhpStorm. * User: Administrator * Date: 2017/5/2 0002 * Time: 17:34 */ namespace App\Libs; class UploadUtils { /** * 随机的文件名 * @param int $len 随机文件名的长度 * @return str 随机字符串 */ private static function randName( $len = 10) { return substr ( str_shuffle ( 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ01234565789' ), 0, $len ); } /** * 创建文件上传到的路径 * @return str 文件上传的路径 */ private static function createDir() { $dir = env( 'UPLOADPATH' ) . date ( 'Ymd' , time()); if ( is_dir ( $dir ) || mkdir ( $dir , 0777, true)) { return $dir ; } } /** * 获取上传文件的路径 * @return str 文件的全路径 */ public static function getUploadPath( $ext = 'jpg' ) { return self::createDir() . '/' . self::randName() . '.' . $ext ; } } |
上传处理
|
//上传缩略图 if ( $request ->hasFile( 'thumb' )) { //存在图片 $file = $request ->file( 'thumb' ); $path = UploadUtils::getUploadPath( $file ->guessExtension()); //获取保存的文件路径 Image::make( $file )->resize(env( 'THUMB_WIDTH' ), env( 'THUMB_HEIGHT' ))->save( $path ); //保存 ... #save database ... } |
希望本文所述对大家基于Laravel框架的PHP程序设计有所帮助。
原文链接:https://blog.csdn.net/baochao95/article/details/72582298
您可能感兴趣
- laraveljob怎么运行脚本(Laravel-admin之修改操作日志的方法)
- laravel判断变量为空(关于laravel 数据库迁移中integer类型是无法指定长度的问题)
- laravel检查关联模型(Laravel 关联模型-关联新增和关联更新的方法)
- laravel前后端分离模块化(laravel 实现划分admin和home 模块分组)
- laravel数据库数据代码(在Laravel的Model层做数据缓存的实现)
- 怎么删掉laravel(laravel-admin的图片删除实例)
- laravel api接口开发版本控制(Laravel 创建可以传递参数 Console服务的例子)
- laravel 模型(Laravel 模型关联基础教程详解)
- laravel 后台管理框架(laravel-admin 管理平台获取当前登陆用户信息的例子)
- laravel设置读写权限(解决laravel上传图片之后,目录有图片,但是访问不到404的问题)
- laravel数据库管理教程(Laravel基础_关于view共享数据的示例讲解)
- laravel算法(laravel批量生成假数据的方法)
- laravel 数据库实现原理(laravel 数据迁移与 Eloquent ORM的实现方法)
- laravel接口规范(Laravel5.5 手动分页和自定义分页样式的简单实现)
- laravel事件返回错误数据(laravel Validator ajax返回错误信息的方法)
- laravel自定义使用方法(laravel 获取当前url的别名方法)
- 古代的鸽子是爱情的象征,并非和平的使者(古代的鸽子是爱情的象征)
- 一课译词 放鸽子(一课译词放鸽子)
- 终于来了,淘宝更改账户名测试中,快去看看你能不能修改(淘宝更改账户名测试中)
- 淘宝支持账号名修改,网友 终于可以 重新做人 了(淘宝支持账号名修改)
- 盘点那些年让人称奇的年终奖 最后一个赢辣条毫无悬念(盘点那些年让人称奇的年终奖)
- 你还没有升职吗 他竟因为几套激励理论,升职了(你还没有升职吗)
热门推荐
- php实现redis核心代码(PHP结合Redis+MySQL实现冷热数据交换应用案例详解)
- python 串口图形化(python使用MQTT给硬件传输图片的实现方法)
- mysql主从复制配置(Mysql实现主从配置和多主多从配置)
- python有什么好的微信公众号(python下载微信公众号相关文章)
- mysql常用的sql语句大全(mysql建表常用的sql语句汇总)
- 云服务器和虚拟空间有什么区别(云服务器、虚拟机是一样的吗?有什么不同?)
- dockertomcat运行参数设置(Docker Tomcat为何看不到访问界面)
- docker 环境下udp双向通信怎么办(解决Docker network Create加--subnet后遇到问题)
- css水平或者垂直居中的写法(深入理解CSS行高line-height与文本垂直居中的原理)
- 数据库docker技术(总结Docker不适合部署数据库的7大原因)
排行榜
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9