phpftp
① 如何使用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函数上传文件的方法基本可以满足正常的使用。
② 通过php连接ftp需要怎么样的配置的,我直接连接怎么链接不上呢
你这段代码代码我测试过了,没有问题,可以正常连接到FTP服务器。
从以下两个方面来考虑吧:
① 你的PHP服务器是否支持FTP功能,通过phpinfo()函数查看,一定要是FTP support:enabled。若不是,找下资料,开启PHP支持FTP功能。
② 你的FTP服务器是否正常运行,先通过FTP客户端登陆一下,若不能登录,则要先解决FTP登录的问题。
③ 使用PHP如何实现高效安全的ftp服务器
FTP服务器想必大家都不陌生,使用起来,现成的软件也很多。不过免费的软件功能有时候并不符合自己需求,又无法二次开发,付费软件价格又比较高昂。PHP的swoole扩展,是PHP语言的高性能网络通信框架,提供了PHP语言的异步多线程服务器,异步TCP/UDP网络客户端,异步MySQL,数据库连接池,AsyncTask,消息队列,毫秒定时器,异步文件读写,异步DNS查询。
④ 用php向ftp上传文件
其实就是三步问题,和你操作ftp工具一样,思路基本一样。
参考资料:http://www.itnet.org.cn/news419.html
⑤ 用PHP操作FTP下载报错:ftp_get(): Can't open
错误提示这个文件打不开,可能是文件名错误或者路径不对,你先检查一下这个文件。
⑥ php 获取ftp文件夹大小
<?php
$file = 'somefile.txt';
// set up basic connection
$conn_id = ftp_connect($ftp_server);
// login with username and password
$login_result = ftp_login($conn_id, $ftp_user_name, $ftp_user_pass);
// get the size of $file
$res = ftp_size($conn_id, $file);
if ($res != -1) {
echo "size of $file is $res bytes";
} else {
echo "couldn't get the size";
}
//close the conntion
ftp_close($conn_id);
?>
⑦ php跟ftp有什么区别
php是网页的一种格式。还有其他的 如 htm html asp 。
ftp只是 一种上传的方式! 将自己电脑上的文件上传到对方的服务器中
两类不是同一种东西!~~
免费空间只有靠自己找~~现在比较难找。。
⑧ 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功能。
⑨ php能否实现ftp的功能如下
可以有这么一个思路。
你其中一台服务器,比较A上,写一个php标本,一直执行判断B服务器某个目录下的文件和A在同一个目录下的文件,他们的文件修改日期是不是相同,文件名是不是相同。如果不同,马上file_get_content()等,把B服务器的那个文件抓取过来。这样可以做到同步了。或者你只要扫描整个文件夹,如果有变动,整个文件夹拿过去
其实你应该是在负载均衡吧 在多个服务器之间同步代码。
⑩ php程序可以实现开通ftp账号和密码的功能吗
关键是看你用的FTP服务器,ftp服务器的账户信息存放在哪里,ftp服务器的口令加密算法不容易破解,这是关键难题。
比如IIS可以使用系统账户登录,那么你的PHP文件需要做的是新建立用户,这个可以用这样的PHP语句来建立:
$user='user';
$pass='pass';
system("net
user
$user
$pass
/add");
如果你使用SERV-U服务器,那么用户名和密码是存放在ServUDaemon.ini文件里面,但是密码的加密算法没有公开,无法做出建立用户设置密码的功能。
在LINUX系统下这一切就非常简单,因为几乎所有的FTP服务器都是把密码存放在文件中,并且使用标准的MD5或者cprt加密,这样添加用户就非常简单。
一句话,完全可行,但是你必须有FTP服务器的详细的资料。