Heim  >  Artikel  >  Backend-Entwicklung  >  php获取远程图片的三种方式

php获取远程图片的三种方式

WBOY
WBOYOriginal
2016-06-23 13:34:47942Durchsuche

1:file_get_contents,file_put_contents方式

<?php	function download_remote_file($file_url, $save_to)	{		$content = file_get_contents($file_url);		file_put_contents($save_to, $content);	}?>

用法:

<?php	download_remote_file('http://www.54ux.com/wp-content/themes/d-simple/img/thumbnail.jpg', realpath("./downloads") . '/file.jpg');?>

2:curl方式

function download_remote_file_with_curl($file_url, $save_to)	{		$ch = curl_init();		curl_setopt($ch, CURLOPT_POST, 0); 		curl_setopt($ch,CURLOPT_URL,$file_url); 		curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); 		$file_content = curl_exec($ch);		curl_close($ch); 		$downloaded_file = fopen($save_to, 'w');		fwrite($downloaded_file, $file_content);		fclose($downloaded_file); 	}

用法:

<?php	download_remote_file_with_curl('http://www.54ux.com/wp-content/themes/d-simple/img/thumbnail.jpg', realpath("./downloads") . '/file.jpg');?>

3:fopen方法

function download_remote_file_with_fopen($file_url, $save_to)	{		$in=    fopen($file_url, "rb");		$out=   fopen($save_to, "wb"); 		while ($chunk = fread($in,8192))		{			fwrite($out, $chunk, 8192);		} 		fclose($in);		fclose($out);	}

用法:

<?php	download_remote_file_with_fopen('http://www.54ux.com/wp-content/themes/d-simple/img/thumbnail.jpg', realpath("./downloads") . '/file.jpg');?>


Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn