【问题标题】:How to move image to new folder?如何将图像移动到新文件夹?
【发布时间】:2011-08-07 05:26:41
【问题描述】:

正如标题所说..如何将图像移动/重命名到新文件夹? 到目前为止我有这个,新图像已调整大小/裁剪但它不会移动到“新/”文件夹:

$in_filename = '4csrWqu9ngv.jpg';

list($width, $height) = getimagesize($in_filename);

$offset_x = 0;
$offset_y = 0;

$new_height = $height - 65;
$new_width  = $width;

$image     = imagecreatefromjpeg($in_filename);
$new_image = imagecreatetruecolor($new_width, $new_height);
imagecopy($new_image, $image, 0, 0, $offset_x, $offset_y, $width, $height);

header('Content-Type: image/jpeg');
imagejpeg($new_image);

$move_new = imagejpeg($new_image);

rename($move_new, 'new/' . $move_new);

一如既往地感谢任何帮助:)

【问题讨论】:

    标签: php image rename crop resize-image


    【解决方案1】:

    “新”文件夹是否存在?如果没有,您需要先使用mkdir 创建它。

    【讨论】:

      【解决方案2】:

      您的代码中几乎没有错误。 imagejpeg 的输出是一个布尔值,所以你的重命名总是失败。您也从未保存调整大小的图像。您必须使用imagejpeg 的第二个参数并提供新图像的正确文件名。另外,请确保目录new 存在,否则重命名将失败。

      固定代码:

      $in_filename = '4csrWqu9ngv.jpg';
      
      list($width, $height) = getimagesize($in_filename);
      
      $offset_x = 0;
      $offset_y = 0;
      
      $new_height = $height - 65;
      $new_width  = $width;
      
      $image = imagecreatefromjpeg($in_filename);
      $new_image = imagecreatetruecolor($new_width, $new_height);
      imagecopy($new_image, $image, 0, 0, $offset_x, $offset_y, $width, $height);
      
      /* Uncomment in case you want it also outputted
      header('Content-Type: image/jpeg');
      imagejpeg($new_image);
      */
      
      imagejpeg($new_image, $in_filename);
      
      rename($in_filename, 'new/' . $in_filename);
      

      【讨论】:

        猜你喜欢
        • 2011-09-25
        • 2019-09-03
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2023-03-18
        • 2016-08-03
        • 1970-01-01
        • 2012-05-20
        相关资源
        最近更新 更多