ftp远程下载文件 丢文件
时间:2011-09-08
来源:互联网
PHP code
远程服务器ftp的根目录下有11个文件夹大概,下载后只有7个,请问是什么原因导致呢?
最开始有一个php反应时间的秒数我给改成了3600
有时就能完整下载,不知有函数或者.ini文件里面控制下载文件大小或者数量么?
<?php $remote_addr = 'xx.xx.xx.xx'; //remote远程 $user_name = 'xx'; $user_pwd = 'xxxxxxx'; $dir_prefix = 'E:\\mail\\'. date('Y-m-d'); //prefix前缀 recursive_mkdir($dir_prefix); //recursive递归 $cid = ftp_connect($remote_addr) or die("Couldn't connect to server"); //建立ftp新连接 if (@ftp_login($cid, $user_name, $user_pwd)) { $filelist = filecollect($cid); //collect收集 foreach($filelist as $remote_file) { $local_file = $dir_prefix . substr($remote_file,1); //local_file 本地文件 echo $local_file .'<br>'; fileget($cid,$local_file,$remote_file); } } // close the connection ftp_close($cid); //递归方式读取目录中的文件 function filecollect($cid,$dir='.') { static $flist=array(); if ($files = ftp_nlist($cid,$dir)) //ftp_nlist返回给定目录的文件列表(ftp连接标识符,检查目录) { foreach ($files as $file) { if (ftp_size($cid, $file) == "-1") { filecollect($cid,$file); } else { $flist[] = $file; } } } return $flist; } //创建目录并下载文件 function fileget($cid,$local_file, $server_file) { //目录不存在就创建 if (!file_exists (dirname($local_file))) { if (!@mkdir (dirname($local_file), 0777)) { die($local_file."目录创建失败!"); } } if (ftp_get($cid, $local_file, $server_file, FTP_BINARY)) { echo "传输成功\n"; } else { echo "传输失败\n"; } //chmod($local_file,0666); } function recursive_mkdir( $folder ) { $folder = explode( DIRECTORY_SEPARATOR , $folder ); $mkfolder = ''; for( $i=0 ; isset( $folder[$i] ) ; $i++ ) { $mkfolder .= $folder[$i]; if( !is_dir( $mkfolder ) ) mkdir( "$mkfolder" , 0777,true); $mkfolder .= DIRECTORY_SEPARATOR; } } ?>
远程服务器ftp的根目录下有11个文件夹大概,下载后只有7个,请问是什么原因导致呢?
最开始有一个php反应时间的秒数我给改成了3600
有时就能完整下载,不知有函数或者.ini文件里面控制下载文件大小或者数量么?
作者: xiaozhumt 发布时间: 2011-09-08
现在个人感觉是在读取目录的时候,没有能全部存储下来。。纠结中,刚刚文件夹目录都读到了,但是里面的东西丢了好多
报错误是Transfer OK 转移成功,但是为什么算是错误呢?
例如Warning: ftp_get() [function.ftp-get]: Transfer OK in D:\wamp\www\mail_bak.php on line 63
传输失败 E:\mail\2011-09-08/zhongxu/Sent/1315191073.4457.541024,S=513590.0.S
报错误是Transfer OK 转移成功,但是为什么算是错误呢?
例如Warning: ftp_get() [function.ftp-get]: Transfer OK in D:\wamp\www\mail_bak.php on line 63
传输失败 E:\mail\2011-09-08/zhongxu/Sent/1315191073.4457.541024,S=513590.0.S
作者: xiaozhumt 发布时间: 2011-09-08
相关阅读 更多
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28