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程序实现支持页面后退的两种方法
Jun 30 PHP
PHP 配置文件中open_basedir选项作用
Jul 19 PHP
php数组函数序列之array_keys() - 获取数组键名
Oct 30 PHP
解析PHP将对象转换成数组的方法(兼容多维数组类型)
Jun 21 PHP
PHP 读取大文件的X行到Y行内容的实现代码
Jun 24 PHP
关于php 接口问题(php接口主要也就是运用curl,curl函数)
Jul 01 PHP
php判断类是否存在函数class_exists用法分析
Nov 14 PHP
php递归创建目录的方法
Feb 02 PHP
PHP中addcslashes与stripcslashes函数用法分析
Jan 07 PHP
TP(thinkPHP)框架多层控制器和多级控制器的使用示例
Jun 13 PHP
PHP文件后缀不强制为.php方法
Mar 31 PHP
PHP 观察者模式深入理解与应用分析
Sep 25 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
php 注册时输入信息验证器的实现详解
2013/07/05 PHP
php结合curl实现多线程抓取
2015/07/09 PHP
php中pcntl_fork创建子进程的方法实例
2019/03/14 PHP
php 下 html5 XHR2 + FormData + File API 上传文件操作实例分析
2020/02/28 PHP
用js写了一个类似php的print_r输出换行功能
2013/02/18 Javascript
让angularjs支持浏览器自动填表
2014/11/10 Javascript
nodejs中简单实现Javascript Promise机制的实例
2014/12/06 NodeJs
jquery实现鼠标经过显示下划线的渐变下拉菜单效果代码
2015/08/24 Javascript
jQuery实现滚动切换的tab选项卡效果代码
2015/08/26 Javascript
详解AngularJS中module模块的导入导出
2015/12/10 Javascript
XML、HTML、CSS与JS的区别整理
2016/02/18 Javascript
KnockoutJS 3.X API 第四章之表单value绑定
2016/10/10 Javascript
angularjs $http实现form表单提交示例
2017/06/09 Javascript
jQuery超简单遮罩层实现方法示例
2018/09/06 jQuery
Vue中控制v-for循环次数的实现方法
2018/09/26 Javascript
Vue 框架之动态绑定 css 样式实例分析
2018/11/14 Javascript
详解nodejs解压版安装和配置(带有搭建前端项目脚手架)
2018/12/06 NodeJs
Vue项目中Api的组织和返回数据处理的操作
2019/11/04 Javascript
详解实现vue的数据响应式原理
2021/01/20 Vue.js
transform python环境快速配置方法
2018/09/27 Python
pytorch绘制并显示loss曲线和acc曲线,LeNet5识别图像准确率
2020/01/02 Python
python爬虫开发之selenium模块详细使用方法与实例全解
2020/03/09 Python
Python通过len函数返回对象长度
2020/10/22 Python
纯CSS3实现圆圈动态发光特效动画的示例代码
2021/03/08 HTML / CSS
canvas需要在标签里直接定义宽高
2014/12/17 HTML / CSS
英国买鞋网站:Charles Clinkard
2019/11/14 全球购物
万豪国际住宅与别墅集团:Homes & Villas by Marriott International
2020/10/08 全球购物
什么是makefile? 如何编写makefile?
2012/08/08 面试题
写好自荐信需做到的5要点
2014/03/07 职场文书
论文诚信承诺书
2014/05/23 职场文书
Python代码风格与编程习惯重要吗?
2021/06/03 Python
DjangoRestFramework 使用 simpleJWT 登陆认证完整记录
2021/06/22 Python
SQL Server作业失败:无法确定所有者是否有服务器访问权限的解决方法
2021/06/30 SQL Server
怎么禁用Windows 11快照布局? win11不使用快照布局的技巧
2021/11/21 数码科技
苹果可能正在打击不进行更新的 App
2022/04/24 数码科技
了解MySQL查询语句执行过程(5大组件)
2022/08/14 MySQL