標籤:splay php正則 art 檔案目錄 strlen play out ima clean
<?php/**功能:php完美實現下載遠程圖片儲存到本地*參數:檔案url,儲存檔案目錄,儲存檔案名稱,使用的下載方式*當儲存檔案名稱為空白時則使用遠程檔案原來的名稱*/function getImage($url, $save_dir = ‘‘, $filename = ‘‘, $type = 0){ if (trim($url) == ‘‘) { return array( ‘file_name‘ => ‘‘, ‘save_path‘ => ‘‘, ‘error‘ => 1); } if (trim($save_dir) == ‘‘) { $save_dir = ‘./‘; } if (trim($filename) == ‘‘) { //儲存檔案名稱 $ext = strrchr($url, ‘.‘); if ($ext != ‘.gif‘ && $ext != ‘.jpg‘) { return array( ‘file_name‘ => ‘‘, ‘save_path‘ => ‘‘, ‘error‘ => 3); } $filename = time() . $ext; } if (0 !== strrpos($save_dir, ‘/‘)) { $save_dir .= ‘/‘; } //建立儲存目錄 if (!file_exists($save_dir) && !mkdir($save_dir, 0777, true)) { return array( ‘file_name‘ => ‘‘, ‘save_path‘ => ‘‘, ‘error‘ => 5); } //擷取遠程檔案所採用的方法 if ($type) { $ch = curl_init(); $timeout = 5; curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, $timeout); $img = curl_exec($ch); curl_close($ch); } else { ob_start(); readfile($url); $img = ob_get_contents(); ob_end_clean(); } //$size=strlen($img); //檔案大小 $fp2 = @fopen($save_dir . $filename, ‘a‘); fwrite($fp2, $img); fclose($fp2); unset($img, $url); return array( ‘file_name‘ => $filename, ‘save_path‘ => $save_dir . $filename, ‘error‘ => 0);}$url=‘http://old.pep.com.cn/xxsx/jszx/tbjxzy/xs3bjxzy/wenzi/201504/W020150417332945629042.jpg‘;getImage($url, $save_dir = ‘./getimg/‘, $filename = ‘‘, $type = 0);?>
View Code
PHP正則採集圖片並儲存