我一直在尝试制作一个可以上传大文件的系统,最初我使用的是 HTTP,但这有一些需要更改的设置问题。所以我想我会尝试使用 FTP。
现在我在 PHP 中有一个 ftp 连接,它可以查找,我可以查看文件夹和文件以及创建目录,但我似乎无法弄清楚如何获取本地文件并上传它。
我一直在阅读大量信息和教程,例如 PHP 手册和我在nettuts上找到的教程,但我正在努力做到这一点。该教程说您可以上传本地文件,但我必须遗漏一些东西。
这是我正在使用的上传方法:
public function uploadFile ($fileFrom, $fileTo)
{
// *** Set the transfer mode
$asciiArray = array('txt', 'csv');
$extension = end(explode('.', $fileFrom));
if (in_array($extension, $asciiArray))
$mode = FTP_ASCII;
else
$mode = FTP_BINARY;
// *** Upload the file
$upload = ftp_put($this->connectionId, $fileTo, $fileFrom, $mode);
// *** Check upload status
if (!$upload) {
$this->logMessage('FTP upload has failed!');
return false;
} else {
$this->logMessage('Uploaded "' . $fileFrom . '" as "' . $fileTo);
return true;
}
}
当尝试上传文件时,我使用这个:
$fileFrom = 'c:\test_pic.jpg';
$fileTo = $dir . '/test_pic.jpg';
$ftpObj -> uploadFile($fileFrom, $fileTo);
我认为这会从我的机器中获取存储在 c: 中的文件并将其上传到目的地,但它失败了(不知道为什么)。所以我改变了一点,改变$fileFrom = test_pic.jpg
了远程服务器上同一个文件夹中的图片。当我运行此代码时,脚本将文件从一个位置复制到另一个位置。
那么我将如何从本地计算机获取文件以发送到服务器?
提前致谢。