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 htmlspecialchars加强版
Feb 16 PHP
解析php中获取url与物理路径的总结
Jun 21 PHP
使用PHP实现蜘蛛访问日志统计
Jul 05 PHP
php获取文件大小的方法
Feb 26 PHP
ThinkPHP快速入门实例教程之数据分页
Jul 01 PHP
如何通过Linux命令行使用和运行PHP脚本
Jul 29 PHP
PHP去掉json字符串中的反斜杠\及去掉双引号前的反斜杠
Sep 30 PHP
php删除数组中重复元素的方法
Dec 22 PHP
thinkPHP自动验证、自动添加及表单错误问题分析
Oct 17 PHP
php中__toString()方法用法示例
Dec 07 PHP
PHP命令行与定时任务
Apr 01 PHP
微信小程序和php的登录实现
Apr 01 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
Fine Uploader文件上传组件应用介绍
2013/01/06 PHP
深入PHP empty(),isset(),is_null()的实例测试详解
2013/06/06 PHP
关于PHP二进制流 逐bit的低位在前算法(详解)
2013/06/13 PHP
ThinkPHP模板Switch标签用法示例
2014/06/30 PHP
两种设置php载入页面时编码的方法
2014/07/29 PHP
php可应用于面包屑导航的迭代寻找家谱树实现方法
2015/02/02 PHP
jQuery 打造动态下滑菜单实现说明
2010/04/15 Javascript
Mac地址验证的javascript代码
2013/11/09 Javascript
扩展IE中一些不兼容的方法如contains、startWith等等
2014/01/09 Javascript
JavaScript Array对象扩展indexOf()方法
2014/05/09 Javascript
JQuery的ON()方法支持的所有事件罗列
2015/02/28 Javascript
Node.js编程中客户端Session的使用详解
2015/06/23 Javascript
原生JS版和jquery版实现checkbox的全选/全不选/点选/行内点选(Mr.Think)
2016/10/29 Javascript
微信小程序购物商城系统开发系列-工具篇的介绍
2016/11/21 Javascript
详解Angular.js数据绑定时自动转义html标签及内容
2017/03/30 Javascript
vue中vee validate表单校验的几种基本使用
2018/06/25 Javascript
详解vue+webpack+express中间件接口使用
2018/07/17 Javascript
在Create React App中使用CSS Modules的方法示例
2019/01/15 Javascript
搭建vscode+vue环境的详细教程
2020/08/31 Javascript
[03:46]DOTA2英雄基础教程 维萨吉
2013/12/11 DOTA
Python itertools模块详解
2015/05/09 Python
Python实现图片转字符画的示例
2017/08/22 Python
python实践项目之监控当前联网状态详情
2019/05/23 Python
python登录WeChat 实现自动回复实例详解
2019/05/28 Python
Django上使用数据可视化利器Bokeh解析
2019/07/31 Python
Python调用graphviz绘制结构化图形网络示例
2019/11/22 Python
python实现遍历文件夹图片并重命名
2020/03/23 Python
keras中模型训练class_weight,sample_weight区别说明
2020/05/23 Python
购买大码女装:Lane Bryant
2016/09/07 全球购物
专门经营化妆刷的美国彩妆品牌:Sigma Beauty
2017/09/11 全球购物
结婚喜宴家长答谢词
2014/01/15 职场文书
促销活动总结报告
2014/04/26 职场文书
单位一把手群众路线四风问题整改措施
2014/09/25 职场文书
2015年干部教育培训工作总结
2015/05/15 职场文书
党员发展大会主持词
2015/07/03 职场文书
诚信考试主题班会
2015/08/17 职场文书