php使用ob_start()实现图片存入变量的方法


Posted in PHP onNovember 14, 2014

本文实例讲述了php使用ob_start()实现图片存入变量的方法。分享给大家供大家参考。具体实现方法如下:

用php的GD库处理完图片后,只能将图片用imagejpeg()输出,或者写入一个文件。很多时候并不需要这么做。比如要将图片存入数据库就需要把图片写入变量保存,用 ob_start() 启用缓存 ob_get_contents()获取缓存就可以将图片写入变量

<?php

$imgPath ="图片地址" ;

//获得图片信息 $imgPath 可以为远程地址

list( $srcWidth, $srcHeight, $type ) = getimagesize( $imgPath );

...

switch( $type ) {

case 1: $imgCreate = 'ImageCreateFromGIF'; break;

case 2: $imgCreate = 'ImageCreateFromJPEG'; break;

case 3: $imgCreate = 'ImageCreateFromPNG'; break;

default: return false;

}

$orig = $imgCreate( $imgPath );

...

//开启缓存

ob_start();

//生成图片

switch ($type)

{

case 1: imagegif($orig); break;

case 2: imagejpeg($orig); break; // best quality

case 3: imagepng($orig); break; // no compression

default: echo ''; break;

}

//将图片存入变量

$imageCode = ob_get_contents();

ob_end_clean();

个人不建义把图片保存在变量,这样会比较浪费资源 ,这里也是测试一下而已。

希望本文所述对大家的PHP程序设计有所帮助。

PHP 相关文章推荐
PHP安装攻略:常见问题解答(一)
Oct 09 PHP
遍历指定目录下的所有目录和文件的php代码
Nov 27 PHP
php模拟服务器实现autoindex效果的方法
Mar 10 PHP
使用PHPExcel操作Excel用法实例分析
Mar 26 PHP
如何把php5.3版本升级到php5.4或者php5.5
Jul 31 PHP
php获取汉字拼音首字母的方法
Oct 21 PHP
PHP基于单例模式实现的mysql类
Jan 09 PHP
Yii控制器中操作视图js的方法
Jul 04 PHP
PHP进制转换实例分析(2,8,16,36,64进制至10进制相互转换)
Feb 04 PHP
PHP实现电商订单自动确认收货redis队列
May 17 PHP
PHP实现QQ、微信和支付宝三合一收款码实例代码
Feb 19 PHP
PHPstorm激活码2020年5月13日亲测有效
Sep 17 PHP
php使用date和strtotime函数输出指定日期的方法
Nov 14 #PHP
php获取url参数方法总结
Nov 13 #PHP
PHP采用get获取url汉字出现乱码的解决方法
Nov 13 #PHP
php数组保存文本与文本反编成数组实例
Nov 13 #PHP
php一维二维数组键排序方法实例总结
Nov 13 #PHP
php生成随机颜色的方法
Nov 13 #PHP
javascript some()函数用法详解
Nov 13 #PHP
You might like
上海地方志办公室-上海电子仪表工业志
2021/03/04 无线电
php提示Call-time pass-by-reference has been deprecated in的解决方法[已测]
2012/05/06 PHP
基于php设计模式中工厂模式详细介绍
2013/05/15 PHP
php使用flock阻塞写入文件和非阻塞写入文件的实例讲解
2017/07/10 PHP
对于Laravel 5.5核心架构的深入理解
2018/02/22 PHP
tp5 实现列表数据根据状态排序
2019/10/18 PHP
清除网页历史记录,屏蔽后退按钮!
2008/12/22 Javascript
jQuery点击弹出下拉菜单的小例子
2013/08/01 Javascript
JavaScript统计字符串中每个字符出现次数完整实例
2016/01/28 Javascript
jquery css实现邮箱自动补全
2016/11/14 Javascript
Bootstrap按钮组简单实现代码
2017/03/06 Javascript
浅谈vue中改elementUI默认样式引发的static与assets的区别
2018/02/03 Javascript
jQuery实现DIV响应鼠标滑过由下向上展开效果示例【测试可用】
2018/04/26 jQuery
微信小程序自定义toast的实现代码
2018/11/16 Javascript
vue学习笔记之slot插槽用法实例分析
2020/02/29 Javascript
[01:20]PWL开团时刻DAY9——听说潮汐没用?
2020/11/10 DOTA
python模块之StringIO使用示例
2015/04/08 Python
Python中自定义函数的教程
2015/04/27 Python
python tkinter窗口最大化的实现
2019/07/15 Python
Python Django框架模板渲染功能示例
2019/11/08 Python
基于PyTorch的permute和reshape/view的区别介绍
2020/06/18 Python
Python模块zipfile原理及使用方法详解
2020/08/04 Python
lululemon美国官网:瑜伽服+跑步装备
2018/11/16 全球购物
KIKO MILANO俄罗斯官网:意大利领先的化妆品和护肤品品牌
2021/01/09 全球购物
大学生2014全国两会学习心得体会
2014/03/10 职场文书
北京奥运会口号
2014/06/21 职场文书
2015新员工试用期工作总结
2014/12/12 职场文书
2015年乡镇扶贫工作总结
2015/04/08 职场文书
2015年幼儿园保育员工作总结
2015/04/23 职场文书
2015年售票员工作总结
2015/04/29 职场文书
国情备忘录观后感
2015/06/04 职场文书
2016大学迎新晚会开场白
2015/11/24 职场文书
MySQL Shell的介绍以及安装
2021/04/24 MySQL
python 爬取哔哩哔哩up主信息和投稿视频
2021/06/07 Python
教你利用Nginx 服务搭建子域环境提升二维地图加载性能的步骤
2021/09/25 Servers
nginx中封禁ip和允许内网ip访问的实现示例
2022/03/17 Servers