ホームページ >バックエンド開発 >PHPチュートリアル >PHPを使用して画像をバッチでダウンロードします。オンラインで見つかったコードは使いにくいです

PHPを使用して画像をバッチでダウンロードします。オンラインで見つかったコードは使いにくいです

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBオリジナル
2016-06-13 12:16:281257ブラウズ

オンラインで見つけた PHP の画像の一括ダウンロードが機能しません。


<br />function project_statistics(){<br />    	echo "11111";<br />    	$url = "http://www.xxx.com:81/upload/image";  <br />		$content=file_get_contents($url);  <br />		$reg="/<img.*?src=\"(.*?)\".*?>/";  <br />		  <br />		preg_match_all($reg,$content,$matches);  <br />		  <br />		$path = '../download/img';  <br />		if(!file_exists($path)){  <br />		    mkdir($path, 0777);  <br />		}  <br /><br />		function downImage($url,$filename="") {  <br />		    if($url=="") return false;  <br />		  <br />		    if($filename=="") {  <br />		        $ext=strrchr($url,".");  <br />		        if($ext!=".gif" && $ext!=".jpg" && $ext!=".png" && $ext!="jpeg") return false;  <br />		        $filename=date("YmdHis").$ext;  <br />		    }  <br />		  <br />		    ob_start();  <br />		    //make file that output from url goes to buffer  <br />		    readfile($url);  <br />		    //file_get_contents($url);  这个方法不行的!!!只能用readfile  <br />		    $img = ob_get_contents();  <br />		    ob_end_clean();  <br />		  <br />		    [email&#160;protected]($filename, "a");//append  <br />		    fwrite($fp,$img);  <br />		      <br />		    fclose($fp);  <br />		  <br />		    return $filename;  <br />		    	<br />		  }<br />		for($i = 0;$i < count($matches[1]);$i ++){  <br />		      <br />		    /*explode <br />		    $url_arr[$i] = explode('/', $matches[1][$i]); <br />		    $last = count($url_arr[$i])-1; <br />		    */  <br />		      <br />		    //strrchr     <br />		    $filename = strrchr($matches[1][$i], '/');  <br />		      <br />		    downImage($matches[1][$i],$path.$filename);  <br />		    //downImage($matches[1][$i],$path.'/'.$url_arr[$i][$last]);  <br />		}  <br />  <br /><br />}<br />
アドバイスをお願いします。サーバーにアップロードされたすべての写真をローカルにダウンロードしたいだけです。これはまだ変更する必要があります

-----解決策のアイデア----------------------あなたが望んでいることこのコードは、ターゲット Web ページ上のすべてのイメージ タグを収集し、ダウンロードします。 。

サーバーにアップロードされた画像をダウンロードしたい場合は、上記のコードの downImage 関数を通じて、サーバー上の画像の URL アドレスをダウンロードに渡してみることができます。

------解決策のアイデア----------------------画像の URL はありますか?
すべての URL をループし、file_get_contents を使用してダウンロードします。

例:
$url = "http://www.abc.com/1.jpg';
$c = file_get_contents($url);
file_put_contents(basename( $ url), $c, true);

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