php大上传通过ftp

php大上传通过ftp,php,ftp,Php,Ftp,我必须用php通过ftp传输文件。文件很大(也超过500MB)。 所以我认为使用php和ftp <?php // connect and login to FTP server $ftp_server = "ftp.example.com"; $ftp_conn = ftp_connect($ftp_server) or die("Could not connect to $ftp_server"); $login = ftp_login($ftp_conn, $ftp_username

我必须用php通过ftp传输文件。文件很大(也超过500MB)。 所以我认为使用php和ftp

<?php
// connect and login to FTP server
 $ftp_server = "ftp.example.com";
$ftp_conn = ftp_connect($ftp_server) or die("Could not connect to $ftp_server");
$login = ftp_login($ftp_conn, $ftp_username, $ftp_userpass);

$file = "localfile.txt";

// upload file
if (ftp_put($ftp_conn, "serverfile.txt", $file, FTP_ASCII))
  {
  echo "Successfully uploaded $file.";
  }
else
  {
  echo "Error uploading $file.";
  }

// close connection
ftp_close($ftp_conn);
?> 

我必须知道ftp传输中是否也考虑了超时。
如果我通过像upload.php这样的php页面通过代码写入来传输文件,我会在web服务器上设置执行时间限制?

启用服务器端的功能,允许恢复文件上载

在php中,您可以使用诸如system()或exec()之类的函数,通过命令行选项调用ftp

是的,在php中有一些限制:最大上传大小、最大执行时间、最大发布大小等等。
您必须将整个过程分为几个步骤,重新加载页面(如果需要)。

在执行此操作之前,您必须考虑太多的因素,如下所述。您首先需要检查FTP服务器是否允许500MB的上载,第二件事,你必须设置一些PHP指令,如post_max_size和max_upload_size,我建议使用FTP库来简化这项工作,这是我构建的一个很棒的库。

那么你说用PHP和Ajax我可以解决这个问题吗?例如,对于XMLHttpRequest对象,您误解了我。我告诉过你的是在php中使用命令行语法,这意味着用类似“system('call ftp upload via unix command line')”的东西调用ftp,这将确保上传文件。您需要了解本地ftp程序以及如何通过命令行调用它。您可以通过将php时间限制设置为0并在php端使用特殊中止来避免php时间限制-启动的脚本将继续执行,即使超过时间限制。