Php 将图像文件转换为JPEG

Php 将图像文件转换为JPEG,php,html,mysql,Php,Html,Mysql,我有一个网站,允许用户上传任何类型的照片 即gif、jpeg、png 现在,如果上传的文件还没有转换成JPEG格式,我如何将它们转换成JPEG格式 谢谢 以下是我的PHP: if ($_FILES['media']['size'] != 0) { $target= UPLOADPATH . $media; move_uploaded_file($_FILES['media']['tmp_name'], $target); $query= "INSERT INTO post

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

即gif、jpeg、png

现在,如果上传的文件还没有转换成JPEG格式,我如何将它们转换成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');
}

简单地重命名它们的扩展名不会起作用,您需要使用图像处理器来更改文件


签出

也许可以尝试imagecreatefrom*()

在使用此函数之前,您需要了解文件格式


然后在PHP中使用函数

,首先将上传文件的内容读入
imagecreatefromstring()
,类似于
file\u get\u content($filePath)
。从那里,您可以使用一个
imagejpeg
写入另一个扩展名为
.jpg

以下是一个示例:

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


  • 答案的可能副本已在“为什么要将其转换为jpg”中给出?PNG和GIF都是完全有效的格式?