php读取zip文件中的图片,并动态更换div的背景图片
2013-10-11 01:12
267 查看
由于zip包中的图片为bmp格式,php的gd库没有相应的函数,网上找了N多的php类,奈何都是扯淡。
于是另行一套方法,现表露如下,思路:
1、确定zip包中的图片文件名。
2、zip_entry_read 读出文件内容后用文件操作函数写到临时文件,这里图片文件后缀要一致。
3、看情况命名临时图片文件名,因为前台可能会有缓存,不能实时切换。最好随机生成。
我是用的ajax来实现这一过程的。
前台发送ajax:
后台接收处理:
于是另行一套方法,现表露如下,思路:
1、确定zip包中的图片文件名。
2、zip_entry_read 读出文件内容后用文件操作函数写到临时文件,这里图片文件后缀要一致。
3、看情况命名临时图片文件名,因为前台可能会有缓存,不能实时切换。最好随机生成。
我是用的ajax来实现这一过程的。
前台发送ajax:
<span style="white-space:pre"> </span>$.ajax({ type: "GET", url: "http://XXX/readImgFromZip.class.php", data: "w="+$(this).attr('id'), success: function(msg){ $("#Pdiv").css("background",'url(http://XXX/'+msg+')'); } }); //end ajax
后台接收处理:
<?php $img_str=isset($_GET['w'])?$_GET['w']:'first'; /* filename */ switch($img_str) { case 'first': $img_file='init.bmp'; $temp_img='temp1.bmp'; break; case 'second': $img_file='post_offline.bmp'; $temp_img='temp2.bmp'; break; case 'three': $img_file='error_printing.bmp'; $temp_img='temp3.bmp'; break; } /* zip file */ $zip_file=str_replace('\\','/',$_SERVER['DOCUMENT_ROOT'].'/img/ui/aiq.zip'); $zip=zip_open($zip_file); if ($zip) { while ($zip_entry = zip_read($zip)) { $file_name=zip_entry_name($zip_entry); if($file_name==$img_file) if (zip_entry_open($zip, $zip_entry, "r")) { /* read binary stream */ $buf = zip_entry_read($zip_entry, zip_entry_filesize($zip_entry)); /* create temporary bmpImg */ if($fp = fopen($temp_img,'w')) { if(fwrite($fp,$buf)) { fclose($fp); } } zip_entry_close($zip_entry); } } zip_close($zip); } echo $temp_img; ?>
相关文章推荐
- php读取zip文件中的图片,并动态更换div的背景图片
- php实现的css文件背景图片下载器代码
- php读取flash文件高宽帧数背景颜色的方法
- php读取flash文件高宽帧数背景颜色的方法
- php文件操作小结(删除指定文件/获取文件夹下的文件名/读取文件夹下图片名)
- Qt setStyleSheet 添加背景色/背景图片(取消背景色,读取本地文件作为背景色)
- Silverlight读取Zip文件中的图片与视频
- IDE & 软件结构 & 下拉菜单带图片 & 调用shell脚本 & 读取JTree文件名 & 文件读写 & File&ImageUtil & 行号 & 高亮 & 字体 & 背景颜色
- Silverlight读取Zip文件中的图片与视频
- 用资源文件在C#程序中动态更换窗体背景...
- 根据sd卡图片文件,动态设置布局背景
- 用资源文件在C#程序中动态更换窗体背景...
- PHP 增加了对 .ZIP 文件的读取功能
- php 读取文件夹下所有图片、文件的实例
- PHP读取EXCEL文件(包括资源型的图片信息)
- jQuery鼠标移动到Div上后切换背景,或更换图片
- php读取flash文件高宽帧数背景颜色代码
- Android Studio Gradle多渠道打包(动态设定App名称,应用图标,背景图片,状态栏颜色)、配置签名文件
- php两张图片动态合成thinkphp实现二维码及文字水印合并拼接到背景图上
- 读取配置文件加载背景图片,音乐