imagecopyresampled():提供的参数不是有效的Image资源

时间:2012-03-02 06:30:46

标签: php gd

我是Facebook应用程序开发的新手,并在我的第一个应用程序上工作。 我正在尝试使用imagecopyresampled()函数调整图像大小,但是为此获取此错误:

  

警告:imagecopyresampled():提供的参数不是......

中的有效图像资源
$url = "http://graph.facebook.com/{$userId}/picture?type=large";
$img = "udp.gif";
file_put_contents($img, file_get_contents($url));
if (exif_imagetype($img) != IMAGETYPE_GIF) {
    $imgFile = 'temp/' . $userId . '_fdp_' . rand() . '.gif';
    if (exif_imagetype($img) == IMAGETYPE_JPEG)
        $imageObject = imagecreatefromjpeg($img);
        if (exif_imagetype($img) == IMAGETYPE_PNG)
            $imageObject = imagecreatefrompng($img);
            $imagegif($imageObject, $imgFile);
            $imgFile1='temp/' . $userId . '_fdp_.gif';
            $imagecopyresampled($imgFile1, $imgFile, 0, 0, 0, 0, 200, 280, 180, 252);
            $img = $imgFile1;
         }
    }
}

1 个答案:

答案 0 :(得分:4)

你误解了论证类型。 resource是PHP类型,例如stringfloat。需要使用适当的相关函数创建资源。在您的情况下,您需要一个resource原始图片,使用imagecreatefromjpeg等函数创建,另一个类似resource来复制图片,很可能是使用{创建的空白图片{1}}。

引用example from the manual

imagecreatetruecolor

你所拥有的是一个不存在的变量和一个字符串,它不是必需的输入。