我通过文件输入上传了一个文件。如果我 print_r($_FILES),我可以获得几条信息,但它没有给我文件的完整本地路径(我的计算机上的路径,而不是服务器上的路径)。我怎么得到这个?
我需要这个来使用 CodeIgniter 中的 FTP 库。文档是关于如何使用它来上传文件的。
如您所见,它需要完整的本地路径,尽管我不确定为什么。
我通过文件输入上传了一个文件。如果我 print_r($_FILES),我可以获得几条信息,但它没有给我文件的完整本地路径(我的计算机上的路径,而不是服务器上的路径)。我怎么得到这个?
我需要这个来使用 CodeIgniter 中的 FTP 库。文档是关于如何使用它来上传文件的。
如您所见,它需要完整的本地路径,尽管我不确定为什么。
由于文件上传路径是一个从服务器到服务器的变量,我建议你使用move_uploaded_file()
函数:
$target = "uploads/myfile.something";
if(move_uploaded_file($_FILES['uploadedfile']['tmp_name'], $target)) {
// do something
}
这样,无论路径是什么,即使它发生变化,它也将始终有效。可以是您想要的target
任何东西,它与正在执行脚本的当前文件夹相关。
我解决了这个问题。
public function upload($file, $folder) {
$this->CI->ftp->upload($_FILES['file']['tmp_name'], '/public_html/rest/of/path/' . $_FILES['file']['name'], 'ascii', 0775);
}
该文件正在上传,因此您可以使用$FILES['file']['tmp_name']
. 这是来自一个班级,所以这就是我使用$this->CI
. 否则,我只会使用$this
.