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开发模式(简写版)
Mar 15 PHP
php mssql 日期出现中文字符的解决方法
Mar 10 PHP
hessian 在PHP中的使用介绍
Dec 13 PHP
实用PHP会员权限控制实现原理分析
May 29 PHP
浅析PKI加密解密 OpenSSL
Jul 01 PHP
PHP异常Parse error: syntax error, unexpected T_VAR错误解决方法
May 06 PHP
PHP中使用json数据格式定义字面量对象的方法
Aug 20 PHP
PHP爬虫之百万级别知乎用户数据爬取与分析
Jan 22 PHP
php同时使用session和cookie来保存用户登录信息的实现代码
May 13 PHP
PHP中set_include_path()函数相关用法分析
Jul 18 PHP
yii2中dropDownList实现二级和三级联动写法
Apr 26 PHP
聊聊 PHP 8 新特性 Attributes
Aug 19 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
PHP设计模式之代理模式的深入解析
2013/06/13 PHP
php字符串按照单词进行反转的方法
2015/03/14 PHP
thinkphp中的多表关联查询的实例详解
2017/10/12 PHP
php封装的pdo数据库操作工具类与用法示例
2019/05/08 PHP
thinkphp5.1框架容器与依赖注入实例分析
2019/07/23 PHP
javascript模块化是什么及其优缺点介绍
2013/09/02 Javascript
jqeury-easyui-layout问题解决方法
2014/03/24 Javascript
javascript实现节点(div)名称编辑
2014/12/17 Javascript
javascript事件委托的方式绑定详解
2015/06/10 Javascript
jQuery Easyui学习之datagrid 动态添加、移除editor
2016/01/27 Javascript
jQuery Tags Input Plugin(添加/删除标签插件)详解
2016/06/20 Javascript
适用于手机端的jQuery图片滑块动画
2016/12/09 Javascript
jQuery实现 上升、下降、删除、添加一行代码
2017/03/06 Javascript
原生javascript移动端滑动banner效果
2017/03/10 Javascript
使用BootStrap实现标签切换原理解析
2017/03/14 Javascript
Vue.js实现一个SPA登录页面的过程【推荐】
2017/04/29 Javascript
vue组件间通信子与父详解(二)
2017/11/07 Javascript
nodejs初始化init的示例代码
2018/10/10 NodeJs
vue+element模态框中新增模态框和删除功能
2019/06/11 Javascript
vue自定义正在加载动画的例子
2019/11/14 Javascript
Vue v-bind动态绑定class实例方法
2020/01/15 Javascript
[51:34]Ti4主赛事胜者组 DK vs EG 2
2014/07/19 DOTA
Pycharm2017版本设置启动时默认自动打开项目的方法
2018/10/29 Python
pycharm远程开发项目的实现步骤
2019/01/20 Python
Python操作配置文件ini的三种方法讲解
2019/02/22 Python
详解Python直接赋值,深拷贝和浅拷贝
2020/07/09 Python
python数据抓取3种方法总结
2021/02/07 Python
一款纯css3实现的非常实用的鼠标悬停特效演示
2014/11/05 HTML / CSS
MVMT手表官方网站:时尚又实惠的高品质手表
2016/12/04 全球购物
Hawes & Curtis官网:英国经典品牌
2019/07/27 全球购物
兰蔻俄罗斯官方网站:Lancome俄罗斯
2019/12/09 全球购物
资生堂英国官网:Shiseido英国
2020/12/30 全球购物
党员公开承诺践诺书
2014/03/25 职场文书
副科竞争上岗演讲稿
2014/05/12 职场文书
介绍长城的导游词
2015/01/30 职场文书
springboot实现string转json json里面带数组
2022/06/16 Java/Android