phpftp操作
ftp_get
仅是下载,如果本地有内容你不想覆盖的话那就按照时间戳变更下载后的文件名,如果要对文件进行操作
PHP写入文件需要:打开文件fopen()、写入数据fwrite()和关闭文件
fclose()
$fp=fopen("../cnbruce.txt",'w');
r
只读——读模式,打开文件,从文件头开始读
r+
可读可写方式打开文件,从文件头开始读写
w
只写——写方式打开文件,同时把该文件内容清空,把文件指针指向文件开始处。如果该文件已经存在,将删除文件已有内容;如果该文件不存在,则建立该文件
w+
可读可写方式打开文件,同时把该文件内容清空,把文件指针指向文件开始处。如果该文件不存在,则建立该文件
a
追加
以只写方式打开文件,把文件指针指向文件末尾处。如果该文件不存在,则建立该文件
a+
追加
以可读可写方式打开文件,把文件指针指向文件末尾处。如果该文件不存在,则建立该文件
b
二进制
用于于其他模式进行连接。建议使用该选项,以获得更大程度的可移植性
注意,如果fopen()函数调用失败,函数将返回false。否则返回指针数据。所以一般在打开了文件后\读写文件前需要检测下文件是否存在。
2. php连接ftp下载或上传文件
$conn_id = ftp_connect('localhost') or die('can\'t connect to ftp');
// login with username and password
$login_result = @ftp_login($conn_id, $ftpname, $ftppass);
// check connection
if ((!$conn_id) || (!$login_result)) {
echo '连接出错';
exit;
}
//$path 路径$fliename文件名多个文件上传
$dir=ftp_chdir($conn_id,$filename);//上传目录
$Name=array_filter(explode('|',$fliename));
foreach ($Name as $key=>$val){
ftp_put($conn_id, $val, $path.$val, FTP_BINARY)or die('上传失败!');
}
ftp_close($conn_id);
3. 怎么通过PHP来支持FTP和HTTP上传
给你一些 php 操作 ftp 的函数:
FTP 函数
ftp_alloc— 为要上传的文件分配空间
ftp_cp— 切换到当前目录的父目录
ftp_chdir— 在 FTP 服务器上改变当前目录
ftp_chmod— 设置 FTP 服务器上的文件权限
ftp_close— 关闭一个 FTP 连接
ftp_connect— 建立一个新的 FTP 连接
ftp_delete— 删除 FTP 服务器上的一个文件
ftp_exec— 请求运行一条 FTP 命令
ftp_fget— 从 FTP 服务器上下载一个文件并保存到本地一个已经打开的文件中
ftp_fput— 上传一个已经打开的文件到 FTP 服务器
ftp_get_option— 返回当前 FTP 连接的各种不同的选项设置
ftp_get— 从 FTP 服务器上下载一个文件
ftp_login— 登录 FTP 服务器
ftp_mdtm— 返回指定文件的最后修改时间
ftp_mkdir— 建立新目录
ftp_nb_continue— 连续获取/发送文件(non-blocking)
ftp_nb_fget— 从 FTP 服务器获取文件并写入到一个打开的文件(非阻塞)
ftp_nb_fput— 将文件存储到 FTP 服务器 (非阻塞)
ftp_nb_get— 从 FTP 服务器上获取文件并写入本地文件(non-blocking)
ftp_nb_put— 存储一个文件至 FTP 服务器(non-blocking)
ftp_nlist— 返回给定目录的文件列表
ftp_pasv— 返回当前 FTP 被动模式是否打开
ftp_put— 上传文件到 FTP 服务器
ftp_pwd— 返回当前目录名
ftp_quit— ftp_close 的 别名
ftp_raw— 向 FTP 服务器发送命令
ftp_rawlist— 返回指定目录下文件的详细列表
ftp_rename— 更改 FTP 服务器上的文件或目录名
ftp_rmdir— 删除 FTP 服务器上的一个目录
ftp_set_option— 设置各种 FTP 运行时选项
ftp_site— 向服务器发送 SITE 命令
ftp_size— 返回指定文件的大小
ftp_ssl_connect— 打开 SSL-FTP 连接
ftp_systype— 返回远程 FTP 服务器的操作系统类型
例子:
<?php
$ftp_server="";
$ftp_user_name="";
$ftp_user_pass="";
$file="";//tobeuploaded
$remote_file="";
//简历ftp链接
$conn_id=ftp_connect($ftp_server);
//使用用户名和密码登录
$login_result=ftp_login($conn_id,$ftp_user_name,$ftp_user_pass);
//上传文件
if(ftp_put($conn_id,$remote_file,$file,FTP_ASCII)){
echo"成功上传文件:$file ";
exit;
}else{
echo"上传文件错误:$file ";
exit;
}
//关闭ftp链接
ftp_close($conn_id);
4. 用PHP怎样实现把文件从一台服务器,移动到另一台FTP服务器呢
<?php
// 链接ftp
$conn = ftp_connect('地址', '端口', '超时时间');
// 登录
ftp_login($conn, '账号', '密码');
$here = ftp_pwd($conn);
//获取服务器端系统信息ftp_systype()
$server_os = ftp_systype($conn);
//被动模式(PASV)的开关,打开或关闭PASV(1表示开)
ftp_pasv($conn, 1);
//进入目录中用ftp_chdir()函数,它接受一个目录名作为参数。
ftp_chdir($conn, "public_html");
//ftp_mkdir($conn, "test");
ftp_put($conn, "服务器显示的名称", "要上传的文件名称", FTP_ASCII);
ftp_quit($conn);
5. 使用PHP如何实现高效安全的ftp服务器
FTP服务器想必大家都不陌生,使用起来,现成的软件也很多。不过免费的软件功能有时候并不符合自己需求,又无法二次开发,付费软件价格又比较高昂。PHP的swoole扩展,是PHP语言的高性能网络通信框架,提供了PHP语言的异步多线程服务器,异步TCP/UDP网络客户端,异步MySQL,数据库连接池,AsyncTask,消息队列,毫秒定时器,异步文件读写,异步DNS查询。
6. PHP 中如何连接FTP,知道文件名,删除其中的文件
<?php
// set up basic connection
$ftp_server = '10.3.23.254';
$conn_id = ftp_connect($ftp_server);
// login with username and password
$ftp_user_name = 'admin';
$ftp_user_pass = 'xuu9898';
$login_result = ftp_login($conn_id, $ftp_user_name, $ftp_user_pass);
// check connection
if ((!$conn_id) || (!$login_result)) {
echo "FTP connection has failed!";
echo "Attempted to connect to $ftp_server for user $ftp_user_name";
exit;
} else {
echo "Connected to $ftp_server, for user $ftp_user_name";
}
// delete the file
$destination_file = '/backup/m37/abc.txt';
$deleted= ftp_delete($conn_id, $destination_file);
// check deleted status
if (!$deleted) {
echo "FTP delete has failed!";
} else {
echo "delete $destination_file success." }
// close the FTP stream
ftp_close($conn_id);
?>
===========
建议查询手册.
目标服务器必须启动ftp服务.
7. 如何在ftp服务器上部署php网站
首先你的服务器上要有一个能解析PHP的软件,如:APACHE,TOMCAT等等,先启动这个软件,具体的配置方法可以上网再找一下。然后在他们的
配置文件
中,把你的这个PHP文件夹设置为网站的发布位置,这样你就能通过IP地址网络来访问了。如果想通过域名的方式来访问,那就比较复杂了,首先得有个域名,然后还需要有
DNS解析
服务器来解释这个域名具体指向的位置。然后才能通过域名来访问你的网站。
8. 如何使用php中ftp函数上传文件以及解决上传文件失败的方法
一、 ftp上传图片参数说明。
1 $source:本机图片完整的路径。(/a/b/c.jpg)
2 $des :上传目标linux主机完整的路径。
3 $ftp_server:ftp地址
4 $ftp_user_name:ftp用户名
5 $ftp_user_pass: ftp密码
6 $port:端口
二、如何使用php中ftp函数上传文件的方法
例如:
本地地址为:/a/b/c.jpg
目标地址为:/d/a/b/c.jpg
2.1、linux主机上传linux主机。
01 function ftpSendFile($source,$des,$ftp_server,$ftp_user_name,$ftp_user_pass,$port)
02 {
03 // 此步骤是在于上传目录与本机的目录不一致转换使用
04 $des = "/d" . $des;
05 $conn_id = ftp_connect($ftp_server, $port) or die("Couldn't connect to $ftp_server");
06 $login_result = ftp_login($conn_id, $ftp_user_name, $ftp_user_pass);
07 ftp_pasv($conn_id, TRUE);
08 $ftp_folder = dirname($des);
09 $dir = explode("/", $ftp_folder);
10 $path = "";
11 for ($i = 0; $i < count($dir); $i++) {
12 $path .= "/" . $dir[$i];
13 if (!ftp_chdir($conn_id, $path)) {
14 $result = ftp_mkdir($conn_id, $path);
15 }
16 }
17 if (ftp_put($conn_id, $des, $source, FTP_BINARY)) {
18 return 1;
19 } else {
20 return 0;
21 }
22 ftp_close($conn_id);
23 }
2.2、windows主机上传linux主机。
01 function sendPic($source,$des,$ftp_server,$ftp_user_name,$ftp_user_pass,$port)
02 {
03 $des = "/d" . $des;
04 $conn_id = ftp_connect($ftp_server, $port) or die("Couldn't connect to $ftp_server");
05 $login_result = ftp_login($conn_id, $ftp_user_name, $ftp_user_pass);
06 ftp_pasv($conn_id, TRUE);
07 $ftp_folder = dirname(str_ireplace('\\', '/', $des));
08 $dir = explode("/", $ftp_folder);
09 $path = "";
10 for ($i = 0; $i < count($dir); $i++) {
11 $path .= "/" . $dir[$i];
12 if (!ftp_chdir($conn_id, $path)) {
13 $result = ftp_mkdir($conn_id, $path);
14 }
15 }
16 if (ftp_put($conn_id, str_ireplace('\\', '/', $des), $source, FTP_BINARY)) {
17 return 1;
18 } else {
19 return 0;
20 }
21 ftp_close($conn_id);
22 }
上面的两种使用php中ftp函数上传文件的方法基本可以满足正常的使用。
9. 什么是ftp文件,怎么将php网站文件上传到服务器
ftp是
文件传输协议
,利用此协议可以在网络上传输文件。
把文件上传到服务器,一般都是使用ftp的方法,因为往往服务器都会提供ftp功能。具体操作需要安装一个方便操作的ftp客户端,例如TotalCommander就很好,在客户端里面建议一个会话,输入服务器的地址、用户名、密码,然后就可以连接服务器,连接成功后可以看见服务器上的文件,可以和本地的进行
双向传输
(可以上传和下载)。
如果只上传个别文件,可以使用浏览器或者DOS进行传输,浏览器的方法是打开地址:ftp://用户名:密码@服务器地址/,DOS命令是ftp
服务器地址,然后输入用户名和密码。
10. php中如何实现ftp上传基础代码
p工具我们都用过是用来上传文件的,那么在php中如何用代码实现呢,下面简单介绍一个最基础最简单的列子,首先根据我们使用ftp工具来说,实现文件上传需要打开ftp工具->输入ftp地址,端口号,账号,密码登陆ftp->从本地选择相应文件上传到ftp相应目录,php中要实现这么一个简单的功能无非也是这样。
第一步:打开ftp
$ip="101.101.101.101";
$name="name";
$pwd="mima";
$con=ftp_connect($ip,"21")
or("连接失败");
第二步:登陆ftp
ftp_login($con,$name,$pwd);
第三步:上传本地test.php文件到ftp
image目录下
ftp_put($con,"image/test.php","test.php",FTP_ASCII);
此时在ftp上的image目录下可以看到test.php文件了,当然这里上传文件,可以扩展下写个上传表单,将表单附件上传ftp这样就更方便,这里只作为一个文件最基础上传ftp功能。