在codeigniter中下载远程图像

时间:2011-02-19 16:20:00

标签: image codeigniter download

我想使用codeiogniter下载远程托管的图像。并且还必须添加验证功能,以便仅下载图像。 是否可以使用CI ??

提供的内置函数

谢谢。

2 个答案:

答案 0 :(得分:4)

要获取远程图像,您可以使用file_get_contents,假设在php.ini中将allow_url_fopen设置为on。

$image=file_get_contents('http://othersite.com/image.jpg');

完成后,您可以验证文件扩展名,或尝试resize the image检查它是否真的是图像。

答案 1 :(得分:2)

这个解决方案不是来自CI,而是PHP,认为它无论如何都是有用的。 可能正在检查图像大小是否足以确定它是一个图像,如

$imagedata = getimagesize('http://othersite.com/image.jpg');

或使用exif_imagetype

if ( ! function_exists( 'exif_imagetype' ) ) {
    function exif_imagetype ( $filename ) {
        if ( ( list($width, $height, $type, $attr) = getimagesize( $filename ) ) !== false ) {
            return $type;
        }
    return false;
    }
}


if( exif_imagetype('http://othersite.com/image.jpg') ) 
{  
//is an image 
}