0

私はこのURLを持っていwww.example.com/1.pngます。次のようにループを実行したい:

for ($i=0; $i<=10; $i++){
$url = 'www.example.com/'.$i.'.png';
}

今、私は10xのURLを持っています。10 個の URL のうち 7 個が画像で、残りの 3 個は利用できないとします。各o URLから画像をダウンロードしたいのですが、URLが存在しない場合は何もダウンロードされません。

同じことですが、より基本的に説明すると次のようになります。

www.example.com/1.png --- url exists, so i download the image and save it in my folder.
www.example.com/2.png --- url exists, so i download the image and save it in my folder.
www.example.com/3.png --- url doesnt exist, so i dont download anything
www.example.com/4.png --- url exists, so i download the image and save it in my folder.
www.example.com/5.png --- url exists, so i download the image and save it in my folder.
www.example.com/6.png --- url exists, so i download the image and save it in my folder.
www.example.com/7.png --- url doesnt exist, so i dont download anything
www.example.com/8.png --- url exists, so i download the image and save it in my folder.
www.example.com/9.png --- url exists, so i download the image and save it in my folder.
www.example.com/10.png  --- url doesnt exist, so i dont download anything

英語が下手で申し訳ありませんが、この問題を解決する方法はありますか?

4

3 に答える 3

1

で画像をダウンロードすると、確認できる HTTP 応答ヘッダーを含む変数file_get_contents()が生成されます。$http_response_headerこちらのドキュメントを参照してください

于 2013-03-19T13:20:51.890 に答える
0

ヘッダーの 404 エラーを確認できます。

$file_headers = @get_headers($url);
if($file_headers[0] == 'HTTP/1.1 404 Not Found') {
    //Does not exist
}
else
{
    //Exists, so put download code here
}
于 2013-03-19T13:19:22.737 に答える