PHP,需要帮助使用cURL,因为allow_url_fopen被禁用

时间:2012-01-30 22:39:26

标签: php curl feed image-resizing

我需要一些帮助。我对cURL很新。我有一个脚本工作,可以从wordpress博客创建一个feed(使用magpie XML解析器)。我还有一个图像调整大小脚本来为我调整图像大小。它在本地工作,但因为我的网络托管已禁用allow_url_fopen()我被告知我需要使用cURL,但我无法得到任何工作。

以下是我试图让cURL正常工作的代码:

<?php


$url = $_GET['imagesrc'];


// Set a maximum height and width
$width = 200;
$height = 200;

// Content type


// Get new dimensions
list($width_orig, $height_orig) = getimagesize($url);

$ratio_orig = $width_orig/$height_orig;

if ($width/$height > $ratio_orig) {
   $width = $height*$ratio_orig;
} else {
   $height = $width/$ratio_orig;
}

// Resample
$image_p = imagecreatetruecolor($width, $height);
$image = imagecreatefromjpeg($url);
imagecopyresampled($image_p, $image, 0, 0, 0, 0, $width, $height, $width_orig, $height_orig);

// Output
header('Content-Type: image/jpeg');
return(imagejpeg($image_p, null, 100));

?>

1 个答案:

答案 0 :(得分:0)

将图像文件下载到本地计算机,然后在imagecreatefromjpeg($filePointer);中使用它。下载文件的代码如下。

/**
 * Initialize the cURL session
 */
 $ch = curl_init();

 /**
 * Set the URL of the page or file to download.
 */
 curl_setopt($ch, CURLOPT_URL, ‘your_URL’);

 /**
 * Create a new file
 */
 $fp = fopen(‘img.jpg’, ‘w’);

 /**
 * Ask cURL to write the contents to a file
 */
 curl_setopt($ch, CURLOPT_FILE, $fp);

 /**
 * Execute the cURL session
 */
 curl_exec ($ch);

 /**
 * Close cURL session and file
 */
 curl_close ($ch);
 fclose($fp);