PHP实现提取一个图像文件并在浏览器上显示的代码


Posted in PHP onOctober 06, 2012

去年做过一个项目,要把用户上传的图像文件列出文字清单,当用户点击一个文件名后,就可以显示这个图像.

因为要考虑兼容各种不同的图像格式, 我使用了GD库, 判断出具体是那种图像文件(MINE),再调用相应的image生成函数imagecreatefromXXX(),生成一个img,再将这个img以jpeg格式输出至浏览器,虽然做出来了,但总觉得不满意.

今天有机会重新考虑这个功能,在php手册中发现几行代码,简洁明快,完全能实现我要的功能,还不需要GD库

<?php 
$size = getimagesize($filename); //获取mime信息 
$fp=fopen($filename, "rb"); //二进制方式打开文件 
if ($size && $fp) { 
header("Content-type: {$size['mime']}"); 
fpassthru($fp); // 输出至浏览器 
exit; 
} else { 
// error 
} 
?>

代码量是我原来的1/10都不到,速度快了N倍.

PHP 相关文章推荐
搜索引擎技术核心揭密
Oct 09 PHP
vBulletin HACK----显示话题大小和打开新窗口于论坛索引页
Oct 09 PHP
深入PHP数据加密详解
Jun 18 PHP
如何解决CI框架的Disallowed Key Characters错误提示
Jul 05 PHP
php跨域cookie共享使用方法
Feb 20 PHP
PHP中让curl支持sock5的代码实例
Jan 21 PHP
php中mysql连接方式PDO使用详解
Feb 25 PHP
PHP记录搜索引擎蜘蛛访问网站足迹的方法
Apr 15 PHP
php实现对两个数组进行减法操作的方法
Apr 17 PHP
浅谈PHP接收POST数据方式
Jun 05 PHP
HTML中嵌入PHP的简单方法
Feb 16 PHP
php连接mysql之mysql_connect()与mysqli_connect()的区别
Jul 19 PHP
PHP中3种生成XML文件方法的速度效率比较
Oct 06 #PHP
PHP中的生成XML文件的4种方法分享
Oct 06 #PHP
PHP 正则表达式之正则处理函数小结(preg_match,preg_match_all,preg_replace,preg_split)
Oct 05 #PHP
PHP正则表达式之定界符和原子介绍
Oct 05 #PHP
PHP超级全局变量数组小结
Oct 04 #PHP
PHP中数字检测is_numeric与ctype_digit的区别介绍
Oct 04 #PHP
php 保留字列表
Oct 04 #PHP
You might like
php替换超长文本中的特殊字符的函数代码
2012/05/22 PHP
php基础设计模式大全(注册树模式、工厂模式、单列模式)
2015/08/31 PHP
Linux下从零开始安装配置Nginx服务器+PHP开发环境
2015/12/21 PHP
PHP经典实用正则表达式小结
2017/05/04 PHP
PHP实现的多进程控制demo示例
2019/07/22 PHP
解决thinkphp5未定义变量会抛出异常,页面错误,请稍后再试的问题
2019/10/16 PHP
js Dialog 实践分享
2012/10/22 Javascript
Javascript排序算法之计数排序的实例
2014/04/05 Javascript
node.js中的http.response.addTrailers方法使用说明
2014/12/14 Javascript
JavaScript使用FileSystemObject对象写入文本文件内容的方法
2015/08/05 Javascript
js图片轮播效果实现代码
2020/04/18 Javascript
jQuery使用ajax跨域获取数据的简单实例
2016/05/18 Javascript
使用React实现轮播效果组件示例代码
2016/09/05 Javascript
基于AngularJS前端云组件最佳实践
2016/10/20 Javascript
vue如何集成raphael.js中国地图的方法示例
2017/08/15 Javascript
JavaScript中Require调用js的实例分享
2017/10/27 Javascript
JavaScript数组push方法使用注意事项
2017/10/30 Javascript
基于jQuery中ajax的相关方法汇总(必看篇)
2017/11/08 jQuery
手淘flexible.js框架使用和源代码讲解小结
2018/10/15 Javascript
bootstrap datepicker的基本使用教程
2019/07/09 Javascript
Bootstrap实现模态框效果
2019/09/30 Javascript
python控制台显示时钟的示例
2014/02/24 Python
python之wxPython菜单使用详解
2014/09/28 Python
深入Python函数编程的一些特性
2015/04/13 Python
python快速建立超简单的web服务器的实现方法
2018/02/17 Python
Python开启线程,在函数中开线程的实例
2019/02/22 Python
win10下python3.8的PIL库安装过程
2020/06/08 Python
Html5元素及基本语法详解
2016/08/02 HTML / CSS
兼职业务员岗位职责
2014/01/01 职场文书
机械个人求职信范文
2014/01/24 职场文书
餐厅销售主管职责范本
2014/02/19 职场文书
铲车司机岗位职责
2014/03/15 职场文书
春风行动实施方案
2014/03/28 职场文书
党员廉洁自律承诺书
2014/05/26 职场文书
追讨欠款律师函
2015/06/24 职场文书
修辞手法有哪些?
2019/08/29 职场文书