我有php代码来修剪白色外边框并调整大小。当我使用imagejpeg($ newImage)在浏览器中输出它时,它可以正常工作,但是当我尝试保存使用imagejpeg($ newImage,'test.jpg')时,它不会保存在任何地方。请帮助?

$im = imagecreatefromjpeg($src);
$bg = imagecolorallocate($im,$rgb,$rgb,$rgb);


 // Set the header and output image.
header('Content-type: image/jpeg');
imagetrim($im,$bg);
$width = imagesx($im);
$height = imagesy($im);
$newHeight = $height * $newWidth/$width;

$newImage = imagecreatetruecolor($newWidth, $newHeight);
imagecopyresampled($newImage, $im, 0, 0, 0, 0, $newWidth, $newHeight, $width, $height);
//imagejpeg($newImage);
//header('Content-Type: image/jpeg');
imagejpeg($newImage, 'test.jpg');
imagejpeg($newImage);
imagedestroy($im);
imagedestroy($newImage);

最佳答案

只是在答案框中输入答案,问题是文件权限不好。
在用PHP编写文件之前,请不要忘记使用is_writable测试要保存文件的位置。

09-30 00:08