Maison  >  Article  >  développement back-end  >  php获取远程图片的三种方式

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

WBOY
WBOYoriginal
2016-06-23 13:34:47942parcourir

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');?>


Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn