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

PHP と Curl を使用して URL から画像をダウンロードするにはどうすればよいですか?

Barbara Streisand
リリース: 2024-11-30 14:15:12
オリジナル
423 人が閲覧しました

How Can I Download Images from a URL using PHP and Curl?

PHP と Curl を使用して URL 経由で画像ファイルをダウンロードする

画像ファイルをリモート URL からサーバーに保存することは、Web 開発者にとって一般的なタスクです。これは、PHP の Curl 拡張機能を使用してシームレスに実現できます。

問題:

開発者は、Curl を使用して URL から画像ファイルを保存する際に問題が発生しました。提供されたコードでは、望ましい結果が得られないようです。

解決策:

問題を解決するコードの修正バージョンは次のとおりです:

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);
}
ログイン後にコピー

キー変更点:

  • わかりやすくするために、関数の名前がgrab_imageに変更されました。
  • CURLOPT_HEADERは、画像データのみを取得するために0に設定されます。
  • CURLOPT_BINARYTRANSFERは設定されますイメージがバイナリとして保存されるようにするには、1 に設定します。 data.
  • 柔軟な名前付けを可能にするために、保存ファイルのパスが 2 番目の引数として提供されます。

追加のヒント:

PHP構成ファイル (php.ini) で、allow_url_fopen が有効になっていることを確認してください。この設定により、PHP は URL 経由でファイルを開くことができます。

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

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート