将图像文件转换为JPEG

时间:2013-01-07 17:11:09

标签: php html mysql

我有一个网站,我允许用户上传任何类型的照片。

I.eif,jpeg,png

现在,如何将上传的文件转换为JPEG格式,如果它们还没有?

由于

这是我的PHP:

if ($_FILES['media']['size'] != 0) {
    $target= UPLOADPATH . $media;
    move_uploaded_file($_FILES['media']['tmp_name'], $target);
    $query= "INSERT INTO posts (user_id, story, media, date, view, type) VALUES    
            ('$user_id', '$story', '$media', now(), '$view', '1')";
    mysqli_query($connect, $query)
        or die('error with query 2');
}

3 个答案:

答案 0 :(得分:1)

简单地重命名他们的扩展将无法解决问题,您需要使用图像处理器来更改文件。

查看imagemagick

答案 1 :(得分:0)

也许可以尝试像imagecreatefrom *()

这样的函数

imagecreatefrompng(youimage);

imagecreatefromgif(youimage);

在使用此功能之前,您需要知道文件格式。

然后使用imagejpeg()函数

答案 2 :(得分:0)

在PHP中,您首先将上传文件的内容读取到imagecreatefromstring() file_get_content($filePath)。在那里,您使用一个imagejpeg写入另一个扩展名为.jpg

的文件

以下是一个示例:

$handle = imagecreatefromstring(file_get_content($filePath));
imagejpeg($handle,'newfile.jpg',100);

参考

  1. imagejpeg
  2. imagecreatefromstring
  3. file_get_content