本篇内容主要讲解“php数据流如何转化为图片”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“php数据流如何转化为图片”吧! php数据流转化为图片的方法:1、创建一个PHP示例文件;2、通过“class imageUpload {…}”方式定义一个图片类;3、通过“public function image($save_name) {…}”方法创建并写入数据流;4、通过“getimageInfo”方法获取图片信息即可。php 数据流怎么转化为图片?php 接收二进制流转换成图片php 接收二进制流转换成图片,图片类imageUpload.php如下:
error_handler());//设置保存图片名称,若未设置,则随机产生一个唯一文件名 $this->save_name=$save_name?$save_name:md5(mt_rand(),uniqid()); //设置保存图片路径,若未设置,则使用年/月/日格式进行目录存储 $this->save_dir=$save_dir?self::ROOT_PATH.$save_dir:self::ROOT_PATH.date('Y/m/d');//创建文件夹 @$this->create_dir($this->save_dir); //设置目录+图片完整路径 $this->save_fullpath=$this->save_dir.'/'.$this->save_name; } //兼容PHP4 publicfunctionimage($save_name){ $this->__construct($save_name); }pu免费云主机域名blicfunctionstream2Image(){ //二进制数据流 $data=file_get_contents('php://input')?file_get_contents('php://input'):gzuncompress($GLOBALS['HTTP_RAW_POST_DATA']); //数据流不为空,则进行保存操作 if(!empty($data)){ //创建并写入数据流,然后保存文件 if(@$fp=fopen($this->save_fullpath,'w+')){ fwrite($fp,$data); fclose($fp); $baseurl="http://".$_SERVER["SERVER_NAME"].":".$_SERVER["SERVER_PORT"].dirname($_SERVER["SCRIPT_NAME"]).'/'.$this->save_name; if($this->getimageInfo($baseurl)){ echo$baseurl; }else{ echo(self::NOT_CORRECT_TYPE); } }else{} }else{ //没有接收到数据流 echo(self::NO_STREAM_DATA); } } /** *创建文件夹 *@paramString$dirName文件夹路径名 */ publicfunctioncreate_dir($dirName,$recursive=1,$mode=0777){ !is_dir($dirName)&&mkdir($dirName,$mode,$recursive); } /** *获取图片信息,返回图片的宽、高、类型、大小、图片mine类型 *@paramString$imageName图片名称 */ publicfunctiongetimageInfo($imageName=''){ $imageInfo=getimagesize($imageName); if($imageInfo!==false){ $imageType=strtolower(substr(image_type_to_extension($imageInfo[2]),1)); $imageSize=filesize($imageInfo); return$info=array('width'=>$imageInfo[0],'height'=>$imageInfo[1],'type'=>$imageType,'size'=>$imageSize,'mine'=>$imageInfo['mine']); }else{ //不是合法的图片 returnfalse; }}/*privatefunctionerror_handler($a,$b){ echo$a,$b; }*/} ?>
到此,相信大家对“php数据流如何转化为图片”有了更深的了解,不妨来实际操作一番吧!这里是百云主机网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!
本篇内容介绍了“javascript遍历对象的五种方式怎么实现”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!先来准备一个测试对象obj。代码清单1这个是对象遍历…
免责声明:本站发布的图片视频文字,以转载和分享为主,文章观点不代表本站立场,本站不承担相关法律责任;如果涉及侵权请联系邮箱:360163164@qq.com举报,并提供相关证据,经查实将立刻删除涉嫌侵权内容。