PHP后台上传图片
$val) { $updatename="{$key}"; } $file=$file; $name=$file[$updatename]['name']; //文件名称 $size=$file[$updatename]['size']; //文件大小 $type=$file[$updatename]['type']; //文件类型 $tmp_name=$file[$updatename]['tmp_name']; //文件临时文件 $error=$file[$updatename]['error']; //文件错误 if(($error)) { switch($error) { case 1: $s="超过了配置的大小"; break; case 2: $s="超过了表单的大小"; break; case 3: $s="部分文件上传"; break; case 4: $s="没有文件"; break; case 6: $s="找不到临时文件"; break; case 7: $s="文件不可写"; break; case 8: $s="由于扩展PHP程序中断文件上传"; break; } $re='上传的错误提示'; return $s.'>'.$re; } else { //判断是否是数组中的类型 $arr=array('p_w_picpath/jpeg','p_w_picpath/jpg','p_w_picpath/png','p_w_picpath/gif'); if(!in_array($type,$arr)) { $re='上传的错误提示'; $s='上传的格式不对'; return $s.'>'.$re; exit; } //判断是否是http post提交 if(!is_uploaded_file($tmp_name)) { $re='上传的错误提示'; $s='此文件不是通过post提交'; return $s.'>'.$re; exit; } else { //获取真实的名字,以时间为命名 $NAME=date('Ymd',time()).rand(0,999999999); $hou=explode('.',$name); $houzui=$hou[count($hou)-1]; $p=date('Ym'); $path='uploade/'.$p; $this->pathall=$path; $this->picname=$NAME.'.'.$houzui; if(!is_dir($path)) { mkdir($path,0777,true); $path=$path.'/'.$NAME.'.'.$houzui; if(move_uploaded_file($tmp_name,$path)) { if($kaiqi==true) { $ys=$this->yasuo($path,$w,$H); } if($kaiqi==true) { return $path.'*'.$ys."@"; } else { return $path.'*'; } } else { return "上传失败"; } } else { $path=$path.'/'.$NAME.'.'.$houzui; if(move_uploaded_file($tmp_name,$path)) { if($kaiqi==true) { $yasuo=$this->yasuo($path,$w,$H); } ///echo ""; if($kaiqi==true) { return $path.'*'.$ys."@"; } else { return $path.'*'; } } else { return "上传失败"; } } } } } public function yasuo($from,$W,$H){ $yasuo_path=$this->pathall.'/'.date('Ym'); if(!is_dir($yasuo_path)) { mkdir($yasuo_path,0777,true); } $from="$from"; list($width,$height,$p_w_picpathstype)=getp_w_picpathsize($from); //获得原来照片的宽,高,文件类型 $get_style=p_w_picpath_type_to_mime_type($p_w_picpathstype); //这是获取图片类型 p_w_picpath/jpeg //等同于 $get_style=getp_w_picpathsize($from)[mine]; $p_w_picpathcreatefrom=str_replace('/','createfrom',$get_style); //替换成 p_w_picpathcreatefromjpeg $p_w_picpathjpeg=str_replace('/',null,$get_style); //替换成 p_w_picpathjpeg $yuanben_p_w_picpath=$p_w_picpathcreatefrom($from); //p_w_picpathcreatefromjpeg() 由文件或 URL 创建一个新图象,原来的图片 $yasuo_p_w_picpath=p_w_picpathcreatetruecolor($W,$H); //这是创建一个新的画布,存放目标图片 p_w_picpathcopyresampled($yasuo_p_w_picpath,$yuanben_p_w_picpath,0,0,0,0,$W,$H,$width,$height); //p_w_picpathcopyresampled 重采样拷贝部分图像并调整大小 //p_w_picpathcopyresampled(目标图象连接资源,源图象连接资源,目标 X 坐标点,目标 Y 坐标点,源的 X 坐标点,源的 Y 坐标点,目标宽度,目标高度,源图象的宽度,源图象的高度); //header('content-type: $get_style'); //头部输出图片的类型 header('Content-Type: p_w_picpath/jpeg'); $p_w_picpathjpeg($yasuo_p_w_picpath,"$yasuo_path/".'yasuo'.$this->picname); //网页中输出的图片类型,压缩图保存的位置 return "$yasuo_path/".'yasuo'.$this->picname; p_w_picpathdestroy($yasuo_p_w_picpath); //销毁压缩后的图片 p_w_picpathdestroy($yuanben_p_w_picpath); //销毁原来的图片 } } ?>
PHP后台上传图片加压缩图片,个人是新手,若有错误,请多多包涵》
创新互联从2013年成立,公司以网站设计、网站制作、系统开发、网络推广、文化传媒、企业宣传、平面广告设计等为主要业务,适用行业近百种。服务企业客户成百上千,涉及国内多个省份客户。拥有多年网站建设开发经验。为企业提供专业的网站建设、创意设计、宣传推广等服务。 通过专业的设计、独特的风格,为不同客户提供各种风格的特色服务。
网站标题:PHP后台上传图片
文章起源:http://cdiso.cn/article/gdsseo.html