php识别翻转iphone拍摄的颠倒图片


Posted in PHP onMay 17, 2018

用iphone横向拍摄并上传的图片往往是向左或向右90度侧向显示的,本文介绍如何用php识别并且翻转图片到正确位置。

ps : 此方法只能判断一些手机相机拍摄的图片位置颠倒 

代码:

// 首先用这个函数读取图片的一些头信息
// 原理就是在头信息中取出图片的位置信息 并且根据位置信息对图片做出调整
// 此函数只能处理jpeg 与 tiff 的图片格式
$exif = exif_read_data ($url,0,true);
 
if(isset($exif['IFD0']['Orientation'])){
 $source = imagecreatefromjpeg($url);//读取图片流
 
 //判断角度翻转
 switch($exif['IFD0']['Orientation']) {
  case 8:
   $image = imagerotate($source, 90, 0);
   break;
  case 3:
   $image = imagerotate($source, 180, 0);
   break;
  case 6:
   $image = imagerotate($source, -90, 0);
   break;
  }
 
 //保存到本地
 imagejpeg($image,'../storage/tmp.jpeg');
 
 //释放内存
 imagedestroy($image);
     
}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

PHP 相关文章推荐
用PHP将数据导入到Foxmail
Oct 09 PHP
不用数据库的多用户文件自由上传投票系统(3)
Oct 09 PHP
PHP中用hash实现的数组
Jul 17 PHP
php中get_headers函数的作用及用法的详细介绍
Apr 27 PHP
解析php类的注册与自动加载
Jul 05 PHP
php代码审计比较有意思的例子
May 07 PHP
PHP中strncmp()函数比较两个字符串前2个字符是否相等的方法
Jan 07 PHP
PHPCMS2008广告模板SQL注入漏洞修复
Oct 11 PHP
PHP上传图片、删除图片简单实例
Nov 12 PHP
微信公众号开发之通过接口删除菜单
Feb 20 PHP
PHP+redis实现的购物车单例类示例
Feb 02 PHP
Laravel创建数据库表结构的例子
Oct 09 PHP
php通过各种函数判断0和空
Jul 04 #PHP
PHP手机短信验证码实现流程详解
May 17 #PHP
PHP实现多图上传和单图上传功能
May 17 #PHP
php实现姓名根据首字母排序的类与方法(实例代码)
May 16 #PHP
PHP多维数组指定多字段排序的示例代码
May 16 #PHP
php strftime函数获取日期时间(switch用法)
May 16 #PHP
Phpstorm+Xdebug断点调试PHP的方法
May 14 #PHP
You might like
php使用反射插入对象示例分享
2014/03/11 PHP
php自定义apk安装包实例
2014/10/20 PHP
ThinkPHP分组下自定义标签库实例
2014/11/01 PHP
php+mysql数据库实现无限分类的方法
2014/12/12 PHP
windows下apache搭建php开发环境
2015/08/27 PHP
php下载文件,添加响应头的简单实例
2016/09/22 PHP
PHP htmlspecialchars() 函数实例代码及用法大全
2018/09/18 PHP
php反序列化长度变化尾部字符串逃逸(0CTF-2016-piapiapia)
2020/02/15 PHP
javascript中获取选中对象的类型
2007/04/02 Javascript
fckeditor 获取文本框值的实现代码
2009/02/09 Javascript
js 代码优化点滴记录
2012/02/19 Javascript
js获取GridView中行数据的两种方法 分享
2013/07/13 Javascript
客户端js性能优化小技巧整理
2013/11/05 Javascript
FF(火狐)浏览器无法执行window.close()解决方案
2014/11/13 Javascript
JavaScript实现页面跳转的方式汇总
2016/05/16 Javascript
JS实现拖动滚动条评分的效果代码分享
2016/09/29 Javascript
bootstrap datetimepicker日期插件使用方法
2017/01/13 Javascript
使用JS实现气泡跟随鼠标移动的动画效果
2017/09/16 Javascript
vue实现点击关注后及时更新列表功能
2018/06/26 Javascript
Vue Element校验validate的实例
2020/09/21 Javascript
总结Python编程中三条常用的技巧
2015/05/11 Python
Django实战之用户认证(初始配置)
2018/07/16 Python
使用Python批量修改文件名的代码实例
2019/01/24 Python
Python headers请求头如何实现快速添加
2020/11/03 Python
python 实现百度网盘非会员上传超过500个文件的方法
2021/01/07 Python
英国著名的茶叶品牌:Whittard of Chelsea
2016/09/22 全球购物
迪士尼英国官方商店:shopDisney UK
2019/09/21 全球购物
面向对象概念面试题(.NET)
2016/11/04 面试题
中文专业毕业生自荐信
2014/05/24 职场文书
捐书倡议书
2014/08/29 职场文书
后进基层党组织整改方案
2014/10/25 职场文书
同学聚会感言一句话
2015/07/30 职场文书
党章学习心得体会2016
2016/01/14 职场文书
pytorch显存一直变大的解决方案
2021/04/08 Python
浅谈Redis 中的过期删除策略和内存淘汰机制
2022/04/03 Redis
HTML5页面打开微信小程序功能实现
2022/09/23 HTML / CSS