doulin4844 2012-11-19 18:29
浏览 23
已采纳

如何将图像从url添加到temp?

I am using the SimpleImage.php class from: http://www.white-hat-web-design.co.uk/blog/resizing-images-with-php/ , to resize, compress and save the images.

Usually using it with an image from input:

$tmp_dir = $_FILES['file']['tmp_name'];
$file_name = 'something.jpg'; 

include('SimpleImage.php');
$image = new SimpleImage();
$image->load($tmp_dir);

$image->resizeToWidth($width);
$image->save('imgd/l'.$file_name);

But how can I deal just with the image url? (from another website)

$img = file_get_contents($url);

The above $img variable keeps the actual image. So how can I save it to temp to use it? If this is the right way.

If it's possible not to have to change SimpleImage.php class.

  • 写回答

1条回答 默认 最新

  • duanbo1659 2012-11-19 18:36
    关注

    With tempnam()

    Creates a file with a unique filename, with access permission set to 0600, in the specified directory. If the directory does not exist, tempnam() may generate a file in the system's temporary directory, and return the name of that.

    <?php 
    $tmpfname = tempnam("/tmp", "UL_IMAGE");
    $img = file_get_contents($url);
    file_put_contents($tmpfname, $img);
    
    include('SimpleImage.php');
    $image = new SimpleImage();
    $image->load($tmpfname);
    
    $image->resizeToWidth($width);
    $image->save('imgd/l'.$file_name);
    ?>
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?