今天是:2025年7月26日 星期六
记住用户名密码
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 | <?php function getFile( $url , $save_dir = '' , $filename = '' , $type = 0) { if (trim( $url ) == '' ) { return false; } if (trim( $save_dir ) == '' ) { $save_dir = './' ; } if (0 !== strrpos ( $save_dir , '/' )) { $save_dir .= '/' ; } //创建保存目录 if (! file_exists ( $save_dir ) && ! mkdir ( $save_dir , 0777, true)) { return false; } //获取远程文件所采用的方法 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 ); $content = curl_exec( $ch ); curl_close( $ch ); } else { ob_start(); readfile( $url ); $content = ob_get_contents(); ob_end_clean(); } //echo $content; $size = strlen ( $content ); //文件大小 $fp2 = @ fopen ( $save_dir . $filename , 'a' ); fwrite( $fp2 , $content ); fclose( $fp2 ); unset( $content , $url ); return array ( 'file_name' => $filename , 'save_path' => $save_dir . $filename , 'file_size' => $size ); } //$url = "http://www.baidu.com/img/baidu_jgylogo3.gif"; //$url="http://192.168.1.212/aaa.doc"; $url = "http://192.168.31.1/" .urlencode(iconv( "GB2312" , "UTF-8" , "测试.doc" )); $save_dir = "down/" ; //$filename = "baidu_jgylog1o31.gif"; $filename = "学习1.doc" ; $res = getFile( $url , $save_dir , $filename ,1); //0 1 都是好使的 var_dump( $res ); ?> |
备注说明:
如果远程文件的命名是英文的话可以直接下载就可以了,如果远程文件名是中文的,必须转换成utf-8的编码格式,然后再urlencode转换成url加密的格式,
php的代码程序的编码是gb2312。
目前有 0 条留言 其中:访客:0 条, 博主:0 条