将图像大小更改为在PHP服务器上保存

时间:2017-06-13 10:12:51

标签: php android upload image-uploading

我的Android应用中有一个表单,它通过图像选择按钮向php服务器发送信息。我想在使用php代码保存在服务器上之前调整图像大小:

<?php
  move_uploaded_file($_FILES['file']['tmp_name'],'uploads/'.$_FILES['file']
  ['name']);
  $orgfile='uploads/'.$_FILES['file']['name'];
  list($width,$height)=getimagesize($orgfile);
  $newfile=imagecreatefromjpeg($orgfile);
  $thumb='uploads/a/'.$_FILES['file']['name'];
  $truecolor=imagecreatetruecolor(600,400);
  imagecopyresampled($truecolor,$newfile,0,0,0,0,600,400,$width,$height);
  imagejpeg($truecolor,$thumb,100);
  unlink($orgfile);
?>

此代码只调整了jpeg图像的大小,另一种格式(png或gif甚至jpg)保存了黑色图像。

有必要提一下图像文件的名称改为随机数,如&#34; 32165465423&#34;而且我不知道要使用的图像格式&#34; imagecreatefrompng&#34;或&#34; imagecreatefromgif&#34;在我的php文件中。

我想要像&#34; imagecreatefromall&#34;或另一个......

谢谢你们(抱歉英语不好)

1 个答案:

答案 0 :(得分:0)

您必须根据可以运行该功能的方式检测图像类型。请参阅一个很酷的php库以供参考

https://github.com/eventviva/php-image-resize/blob/master/lib/ImageResize.php#L77