file_put_contentsで複数画像の取得
自分のサーバー(myserver.com)上で「他サイトにある画像をダウンロードできるPHP」=【download.php】を組みました。
<?php
$url = 'http://yoso.jp/qt6w8d.jpg';
$data = file_get_contents($url);
file_put_contents('./image/photo_1.jpg',$data);
?>
上記では、http://yoso.jp/にある1つの画像をphoto_1.jpgとリネームして、myserver.com/image/ ディレクトリに画像ファイルとして収納できます。
****************************************************************
次に、 1001.csv 1002.csv 1003.csv など複数のCSVファイルを作り、自分のサーバーのmyserver.com/csv_file/ ディレクトリに保管しました。
それぞれのCSVファイルの中には、yoso.jpにある画像のURLが、カンマ区切りで複数書かれています。
例【1001.csv】
中身 (yoso.jp にある 複数(今回3つ)の画像のURLが記載)
http://yoso.jp/qt6w8d.jpg,http://yoso.jp/dve4k.jpg,http://yoso.jp/4m2fl3.jpg,
尚、このCSVファイルもスクレイピンクで自作しているため必要であれば ""で囲むように改良することも可能です。
"http://yoso.jp/qt6w8d.jpg","http://yoso.jp/dve4k.jpg","http://yoso.jp/4m2fl3.jpg",
上記のcsvファイルを用意した後、下記のような【get.php】を組みました。
<?php
$id=$_SERVER['QUERY_STRING'];
$csv_url = "http://myserver.com/csv_file/";
$csv_url .= $id ;
$csv_url .= ".csv";
$file_jpg = file_get_contents( $csv_url );
echo $file_jpg;
?>
この【get.php】は、http://myserver.com/get.php?id=1001 とクエリーでcsv名を指定すると、1001.csvにある画像URL(1001.csvの場合3つ)をPHP上に表示(echo)できます。
**************************************************************
やりたいこと
【download.php】と【get.php】に記載したソースと組み合わせて、csvファイルに書いてある複数の画像をすべてサーバーに取り込みたいです。
可能であればそれぞれの画像名をphoto_1.jpg photo_2.jpg photo_3.jpg のような形でリネームし保存できればと考えていますが、file_put_contentsにて、複数ファイル指定で動作させる方法がわかりません。
どのようにすればいいかご教示戴きたくお願いいたします。
お礼
> 有名かどうかも知らない出典を尋ねて知ったからってどうなる? 私はこの絵が好きなので作成した人を知りたかったのと、作成した人が分かっているのであれば、その人が作成された他の絵を知りたかったからです。 > 使ってるサイトに尋ねればいいのになんで無関係な質問サイトに? 使っているサイトのほとんどはインターネット上のこの画像を流用しているだけなので、出典を聞いてもご存じないでしょう。 > 理由不明確な質問なリンク貼りは 実際に画像をあげて説明しないと分からないのだから、リンクを貼るのは当然の行為では? 大体、こんなところでアフィリエイトの稼ぎをしても継続性がないのだから(質問のトピックはすぐに流れてしまうのだから、ここ数日間はクリックが増えてもその後は伸びない)、そんなバカなことをするわけがありません。