PHP实现ftp上传文件示例


Posted in PHP onAugust 21, 2014

FTP上传是PHP实现的一个常见且非常重要的应用技巧,今天就来与大家分享一下PHP实现FTP上传文件的简单示例。希望对大家的PHP学习能带来一定的帮助。

主要代码如下:

function make_directory($ftp_stream, $dir){
  // if directory already exists or can be immediately created return true
  if ($this->ftp_is_dir($ftp_stream, $dir) || @ftp_mkdir($ftp_stream, $dir)) return true;
  // otherwise recursively try to make the directory
  if (!$this->make_directory($ftp_stream, dirname($dir))) return false;
  // final step to create the directory
  return ftp_mkdir($ftp_stream, $dir);
}
 
function ftp_is_dir($ftp_stream, $dir){
  // get current directory
  $original_directory = ftp_pwd($ftp_stream);
  // test if you can change directory to $dir
  // suppress errors in case $dir is not a file or not a directory
  if ( @ftp_chdir( $ftp_stream, $dir ) ) {
    // If it is a directory, then change the directory back to the original directory
    ftp_chdir( $ftp_stream, $original_directory );
    return true;
  } else {
    return false;
  }
}

$conn = ftp_connect("ftp地址") or die("Could not connect");
ftp_login($conn,"ftpname","password");
//利用ftp创建目录
make_directory($conn,$path);
//利用ftp选择进入目录
ftp_chdir($conn,$path);
//开始上传
if(ftp_put($conn,$info[0]['savename'],getcwd().$upload->savePath.$info[0]['savename'],FTP_BINARY)){
 unlink(getcwd().$upload->savePath.$info[0]['savename']);
}
ftp_close($conn);
//注意上传端的ftp权限设置

感兴趣的朋友可以测试运行或改写本文所述代码,加深理解的同时可以让代码功能更加完善。

PHP 相关文章推荐
聊天室php&mysql(一)
Oct 09 PHP
对Session和Cookie的区分与解释
Mar 16 PHP
php foreach 参数强制类型转换的问题
Dec 10 PHP
php地址引用(php地址引用的效率问题)
Mar 23 PHP
浅析PKI加密解密 OpenSSL
Jul 01 PHP
PHP的拦截器实例分析
Nov 03 PHP
php取得字符串首字母的方法
Mar 25 PHP
PHP异常处理浅析
May 12 PHP
Eclipse PHPEclipse 配置的具体步骤
Aug 08 PHP
PHP工厂模式的日常使用
Mar 20 PHP
PHP反射学习入门示例
Jun 14 PHP
php适配器模式简单应用示例
Oct 23 PHP
PHP高手需要要掌握的知识点
Aug 21 #PHP
PHP中数据库单例模式的实现代码分享
Aug 21 #PHP
PHP中的日期加减方法示例
Aug 21 #PHP
PHP中比较时间大小实例
Aug 21 #PHP
PHP中使用strpos函数实现屏蔽敏感关键字功能
Aug 21 #PHP
PHP中使用sleep函数实现定时任务实例分享
Aug 21 #PHP
PHP实现的多彩标签效果代码分享
Aug 21 #PHP
You might like
mysql5详细安装教程
2007/01/15 PHP
PHP 错误之引号中使用变量
2009/05/04 PHP
PHP批量删除jQuery操作
2017/07/23 PHP
jquery实现简单的拖拽效果实例兼容所有主流浏览器
2013/06/21 Javascript
jquery自定义滚动条插件示例分享
2014/02/21 Javascript
原生javascript实现图片弹窗交互效果
2015/01/12 Javascript
JavaScript中继承用法实例分析
2015/05/16 Javascript
利用js实现禁止复制文本信息
2015/06/03 Javascript
JS实现按比例缩放图片的方法(附C#版代码)
2015/12/08 Javascript
angular ngClick阻止冒泡使用默认行为的方法
2016/11/03 Javascript
jQuery选取所有复选框被选中的值并用Ajax异步提交数据的实例
2017/08/04 jQuery
详解在React里使用"Vuex"
2018/04/02 Javascript
vue响应式更新机制及不使用框架实现简单的数据双向绑定问题
2019/06/27 Javascript
VUE注册全局组件和局部组件过程解析
2019/10/10 Javascript
手把手带你入门微信小程序新框架Kbone的使用
2020/02/25 Javascript
JS async 函数的含义和用法实例总结
2020/04/08 Javascript
vue 动态组件(component :is) 和 dom元素限制(is)用法说明
2020/09/04 Javascript
vue pages 多入口项目 + chainWebpack 全局引用缩写说明
2020/09/21 Javascript
Python模块学习 re 正则表达式
2011/05/19 Python
python实现flappy bird游戏
2018/12/24 Python
Python OpenCV视频截取并保存实现代码
2019/11/30 Python
python怎么自定义捕获错误
2020/06/29 Python
django下创建多个app并设置urls方法
2020/08/02 Python
python 模块导入问题汇总
2021/02/01 Python
css3的transition效果和transfor效果示例介绍
2013/10/30 HTML / CSS
HTML5 Canvas如何实现纹理填充与描边(Fill And Stroke)
2013/07/15 HTML / CSS
学校食堂采购员岗位职责
2013/12/05 职场文书
项目考察欢迎辞
2014/01/17 职场文书
十八大闭幕感言
2014/01/22 职场文书
运动会通讯稿200字
2014/02/16 职场文书
小学生期末评语
2014/04/21 职场文书
2015年员工试用期工作总结
2014/12/12 职场文书
幼儿教师2014年度工作总结
2014/12/16 职场文书
小学运动会入场词
2015/07/18 职场文书
postman中form-data、x-www-form-urlencoded、raw、binary的区别介绍
2022/01/18 HTML / CSS
Vue2项目中对百度地图的封装使用详解
2022/06/16 Vue.js