我通過文件輸入上傳了一個文件。如果我使用print_r($ _ FILES),我可以獲得多個信息,但它不會給出文件的完整本地路徑(我的計算機上的路徑,而不是服務器)。我如何得到這個?
我需要這個在CodeIgniter中使用FTP庫。有關如何使用它來上傳文件的文檔是here。
正如你所看到的,它需要完整的本地路徑,儘管我不知道爲什麼。
我通過文件輸入上傳了一個文件。如果我使用print_r($ _ FILES),我可以獲得多個信息,但它不會給出文件的完整本地路徑(我的計算機上的路徑,而不是服務器)。我如何得到這個?
我需要這個在CodeIgniter中使用FTP庫。有關如何使用它來上傳文件的文檔是here。
正如你所看到的,它需要完整的本地路徑,儘管我不知道爲什麼。
由於文件上傳路徑是從服務器改變爲服務器變量,我會建議你使用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
。
我想使用CI FTP類,而不是文件上傳,因爲它是一個更強大的類,並提供我需要建立一個文件管理器的工具。 – sehummel