你能帮我解决这个问题吗? 我需要使用一些简单的脚本在上传时调整图像大小。
CODE:
<form method="post" enctype="multipart/form-data">
<input type="file" name="obrazky[]" />
<input type="submit" value="Nahrát na server!" />
</form>
<?php
// konfigurace
$uploadDir = 'imgs/nahrane'; // dir
$allowedExt = array('jpg', 'jpeg', 'png', 'gif'); // ok formats
if(isset($_FILES['obrazky']) && is_array($_FILES['obrazky']['name'])) {
$counter = 0;
$allowedExt = array_flip($allowedExt);
foreach($_FILES['obrazky']['name'] as $klic => $nazev) { // make variable $nazev
$nazev = htmlspecialchars($nazev, ENT_QUOTES);
$fileName = basename(time() . ".png");
$fileName = sprintf(time() . ".png", pathinfo($nazev, PATHINFO_EXTENSION));
$tmpName = $_FILES['obrazky']['tmp_name'][$klic];
$fileName = htmlspecialchars($fileName, ENT_QUOTES);
// check
if(
!is_uploaded_file($tmpName)
|| !isset($allowedExt[strtolower(pathinfo($fileName, PATHINFO_EXTENSION))])
) {
// bad format
continue;
}
// move
if(move_uploaded_file($tmpName, "{$uploadDir}".DIRECTORY_SEPARATOR."{$fileName}")) {
++$counter;
}
}
if ($counter > 0)
echo "<hr><p>Uploaded {$counter} z ".sizeof($_FILES['obrazky']['name'])." thank you!<br>
<br>
<b>LINKS</b>:<br>
href:<br>
<a href='$uploadDir/$fileName' target='_blank'>$uploadDir/$fileName</a><br>
else
echo "<hr><b><font color='red'>ERROR: Bad format or no image uploaded.</font></b><br>";
}
?>
我已经完成了google和stackoverflow的搜索,我尝试了所有的东西,但我没有得到它。
答案 0 :(得分:1)
这一直对我有用:
$image = new Imagick();
$image_filehandle = fopen('some/file.jpg', 'a+');
$image->readImageFile($image_filehandle );
$image->scaleImage(100,200,FALSE);
$image_icon_filehandle = fopen('some/file-icon.jpg', 'a+');
$image->writeImageFile($image_icon_filehandle);
您可能希望根据原始图像更加动态地计算宽度和高度。您可以使用上面的示例,使用$ image-&gt; getImageHeight();来获取图像的当前宽度和高度。和$ image-&gt; getImageWidth();。