Php base64字符串到图像

时间:2014-07-05 18:25:02

标签: php base64

我从我的android appliation获取base64字符串,使用php脚本将其保存到目录,一切正常用于png。除了我需要脚本适用于所有图像类型 在android方面我有 httpservlet扩展类并使用它发送带有包含base64字符串的变量的get请求。 所以我们所拥有的只是服务器端没有其他的base64字符串 你能帮帮我吗? 这是我的PHP代码

<?php

 $imgstr = $_REQUEST['string'];


      // Decode the data
$data = base64_decode($imgstr);

$im = imagecreatefromstring($data);
if ($im !== false) {
header('Content-Type: image/png');
imagepng($im);

$success = file_put_contents("img/abc". uniqid().".png", $data);
imagedestroy($im);
if ($success) {
    echo 'yes yes yes';
}
} else {
echo 'An error occurred.';

}    ?&GT;

1 个答案:

答案 0 :(得分:1)

好的,我所做的就是我在编码到base64之前计算了mime类型并将其作为变量发送

我就这样做了

 public static String getMimeType(String url) {
    String type = null;
    String extension = MimeTypeMap.getFileExtensionFromUrl(url);
    if (extension != null) {
        MimeTypeMap mime = MimeTypeMap.getSingleton();
        type = mime.getMimeTypeFromExtension(extension);
    }
    return type;
}   

   mimetype = getMimeType(picturePath);
   String temp[] = mimetype.split("/");
   as.add(new BasicNameValuePair("mime", temp[1]));

此后,与图像一起发送到服务器。