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
您可能感兴趣
- laravel数据返回格式(laravel 关联关系遍历数组的例子)
- laravel前后端分离实现排序(laravel自定义分页的实现案例offset和limit)
- laravel连接多个数据库(laravel实现一个上传图片的接口,并建立软链接,访问图片的方法)
- laravel判断变量为空(关于laravel 数据库迁移中integer类型是无法指定长度的问题)
- laravel关联模型新增数据(使用laravel的migrate创建数据表的方法)
- laravel前后端分离模块化(laravel 实现划分admin和home 模块分组)
- yii2和laravel框架哪个比较简单(关于Yii中模型场景的一些简单介绍)
- laravel接口规范(Laravel5.5 手动分页和自定义分页样式的简单实现)
- laravel循环插入数据(Laravel 实现关系模型取出需要的字段)
- laravel框架入门项目(在laravel框架中使用model层的方法)
- laravel模型使用技巧(提高Laravel应用性能方法详解)
- laravel算法(laravel批量生成假数据的方法)
- laravel怎么同时连接数据库(Laravel框架实现多个视图共享相同数据的方法详解)
- laravel配置文件动态化(在Laravel 的 Blade 模版中实现定义变量)
- laravel 后台任务配置(在Laravel中使用GuzzleHttp调用第三方服务的API接口代码)
- php框架laravel使用(laravel5环境隐藏index.php后缀apache的方法)
- 演员陈创,火于 哮天犬 ,颠峰于 福贵 ,现状却令人唏嘘(演员陈创火于哮天犬)
- 幼小衔接-20以内看图读数 写数 数的组成练习题(幼小衔接-20以内看图读数)
- 你只要花上20天记单词,英语成绩就能从57提到100(你只要花上20天记单词)
- 夕云天际飞,亢龙化太极(夕云天际飞亢龙化太极)
- 爱情可以当饭吃吗(怎么回复)
- 高考数学题(高考数学题基础题占多少分)
热门推荐
- 微信小程序签名怎么操作(微信小程序实现简单手写签名组件的方法实例)
- aws提供了哪些云服务(AWS与阿里云服务器在国内使用的简单对比评测)
- linux巡检命令手册(Linux xargs命令的使用)
- mysql数据库与表的基本操作总结(Mysql、Oracle中常用的多表修改语句总结)
- vuex原理及使用方法(Vuex状态机的快速了解与实例应用)
- Jquery对数组的操作
- centos7 apache配置(CentOSLinux下的apache服务器配置与管理方法分享)
- 新建的dedecms被黑(解决Dedecms生成RSS地图地址出错全都多了一个网址的问题)
- mysql索引原理和优化(Mysql 索引该如何设计与优化)
- 使用javascript数组循环(JavaScript数组reduce方法的语法与实例解析)
排行榜
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9