ホームページ >バックエンド開発 >PHPチュートリアル >PHP で cURL を使用して URL からサーバーに画像を保存するにはどうすればよいですか?

PHP で cURL を使用して URL からサーバーに画像を保存するにはどうすればよいですか?

Linda Hamilton
Linda Hamiltonオリジナル
2024-11-23 07:03:23785ブラウズ

How Can I Save Images from URLs to My Server Using cURL in PHP?

PHP で CURL を使用して URL からファイルを保存する

指定された URL からサーバー上のディレクトリに画像を保存するには、 PHP で CURL を利用する方法を理解することが重要です。これを実現するために考えられる手順は次のとおりです:

元のコード:

function GetImageFromUrl($link)
{
    $ch = curl_init();
    curl_setopt($ch, CURLOPT_POST, 0);
    curl_setopt($ch,CURLOPT_URL,$link);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    $result = curl_exec($ch);
    curl_close($ch);
    return $result;
}

$sourcecode = GetImageFromUrl($iticon);
$savefile = fopen(' /img/uploads/' . $iconfilename, 'w');
fwrite($savefile, $sourcecode);
fclose($savefile);

改善された解決策:

提供されたコードの機能を利用できない場合、別の方法は次のとおりです。推奨:

function grab_image($url,$saveto){
    $ch = curl_init ($url);
    curl_setopt($ch, CURLOPT_HEADER, 0);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    curl_setopt($ch, CURLOPT_BINARYTRANSFER,1);
    $raw=curl_exec($ch);
    curl_close ($ch);
    if(file_exists($saveto)){
        unlink($saveto);
    }
    $fp = fopen($saveto,'x');
    fwrite($fp, $raw);
    fclose($fp);
}

追加の推奨事項:

php.ini ファイルで、allow_url_fopen が有効に設定されていることを確認します。この設定は、外部 URL アクセスを有効にするために重要です。

以上がPHP で cURL を使用して URL からサーバーに画像を保存するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。