Heim >php教程 >php手册 >base64编码的图片上传到服务器

base64编码的图片上传到服务器

WBOY
WBOYOriginal
2016-06-07 11:37:211616Durchsuche

使用$.post提交表格时,图片是无法上传的(除非用编辑器插件什么的,那些都比较大)。
这是一个新思路,图片转base64编码,提交上去,当然,图片不能太大,超过上传限制是不行的。
function base64_upload($base64) {<br>     $base64_image = str_replace(' ', '+', $base64);<br>     //post的数据里面,加号会被替换为空格,需要重新替换回来,如果不是post的数据,则注释掉这一行<br>     if (preg_match('/^(data:\s*image\/(\w+);base64,)/', $base64_image, $result)){<br>         //匹配成功<br>         if($result[2] == 'jpeg'){<br>             $image_name = uniqid().'.jpg';<br>             //纯粹是看jpeg不爽才替换的<br>         }else{<br>             $image_name = uniqid().'.'.$result[2];<br>         }<br>         $image_file = "./upload/test/{$image_name}";<br>         //服务器文件存储路径<br>         if (file_put_contents($image_file, base64_decode(str_replace($result[1], '', $base64_image)))){<br>             return $image_name;<br>         }else{<br>             return false;<br>         }<br>     }else{<br>         return false;<br>     }<br> }

AD:真正免费,域名+虚机+企业邮箱=0元

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn