cURL を使用して画像を取得し、名前を変更してローカルに保存しています。次のように、cURL を使用するかどうかに関係なく、画像は 0 バイトのファイルとして表示されます。
$strImageUrl = curl_init($strImageUrlSource);
$fp = fopen($strTargetImage, 'wb');
curl_setopt($strImageUrl, CURLOPT_FILE, $fp);
curl_setopt($strImageUrl, CURLOPT_HEADER, 0);
curl_exec($strImageUrl);
curl_close($strImageUrl);
fclose($fp);
または file_put/get. そのようです:
file_put_contents($strImageName, file_get_contents($strImageUrlSource));
取得している URL は次のとおりです。
<img src='http://i1.au.reastatic.net/150x112/73fa6c02a92d60a76320d0e89dfbc1a36a6e46c818f74772dec65bae6959c62f/main.jpg' width="150" height="112" alt="Wondecla、アドレスはリクエストに応じて利用可能" title="Wondecla,ご要望に応じてアドレスをご利用いただけます" />
この画像を手動で適切に保存できます。FireFox のプロパティを見ると、次の 3 つのエントリが表示されます。
data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAFgAAABYBAMAAACDuy0HAAAAG1BMVEX+/v4BAQH///8KCgoDAwN/f3/19fWAgID8... etc
data:image/png;base64,iVBORw0KG ... etc.
ここで何が間違っていますか?