2013-09-21 46 views
0

($数据进行编码JPG图像&然后通过下面的代码&试图将它保存图像文件夹中对其进行解码)这是图像文件夹中存储图像的正确方法?(在PHP)

$data = base64_decode($data);   //decoded image 
$im = imagecreatefromstring($data); 
if ($im !== false) 
{ 
    header('Content-Type: image/jpg'); 
    imagejpeg($im); 
    imagedestroy($im); 
} 
else 
{ 
    echo 'An error occurred.'; 
} 
// storing it in image folder on 
$success = file_put_contents('images/5.jpg',$im); 
echo $success ? $im : 'Unable to save the file.'; 
+0

你的问题很不清楚。请尝试更好地描述你的问题。 – BlitZ

回答

0

可以请你用这个

chdir('images'); 

// and then 

$success = file_put_contents('5.jpg',$im); 

可以请你改变你的当前工作目录

检查这个chdir

+0

@ Shakti Patel,我试过了,它没有工作! :( – user2776020

2

$im变量不包含图像数据,它是一个不透明的资源,可以与gd函数一起使用但没有别的。将它写入文件不会做你想要的。

要将图像保存为JPEG格式,您应该使用imagejpeg函数并提供文件路径作为第二个参数。或者,如果原始图像数据已经是JPEG格式,则可以将$data字符串写入该文件(在这种情况下,为什么麻烦将其解码为图像?)。

+0

@ Joni谢谢,但我得到我的原始图像字节数组格式,所以我解码它的形象和存储在$数据变量(因为它会是字符串流,我使用imagecreatefromstring(),这有助于我从字符串流中获取图像) – user2776020

+0

那么问题是什么? – Joni

+0

@ Joni的问题是我是否用正确的方式编码!! – user2776020

相关问题