我無法讓file_put_contents()工作將解碼後的電子郵件附件上傳爲我的服務器上的文件。這是基本的腳本:file_put_contents問題 - 「沒有這樣的文件或目錄」
$user = "user";
$pass = "pass";
$host = "ftp://mydomain.com";
$content = 'hello';
$file = 'public_html/mydomain.com/files/readme.txt';
$options = array('ftp' => array('overwrite' => true));
$stream = stream_context_create($options);
$hostname = $user . ":" . $pass . "@" . $host . "/" . $file;
file_put_contents($hostname, $content, 0, $stream);
我已經試過這各種製劑,包括在不同的FTP用戶記錄,不管我做什麼,我得到一個「沒有這樣的文件或目錄」錯誤。我的服務器具有「/public_html/mydomain.com/」文件結構的典型結構,但這似乎不起作用。然而,當我嘗試使用我們的ftp_put()時,它似乎使連接和找到目錄就好 - 但我不能使用ftp_put(),因爲我沒有上傳本地文件,而是一個字符串到遠程文件。
下面是我用的代碼:
$user = "user";
$pass = "pass";
$host = "mydomain.com";
$ftp_path = '/public_html/files';
$content = 'localfile.txt'
$conn_id = ftp_connect($host, 21) or die ("Cannot connect to host");
ftp_pasv($conn_id, true);
ftp_login($conn_id, $user, $pass) or die("Cannot login");
// perform file upload
ftp_chdir($conn_id, '/public_html/mydomain.com/files/');
$upload = ftp_put($conn_id, $ftp_path, $content, FTP_BINARY);
if($upload) { $ftpsucc=1; } else { $ftpsucc=0; }
ftp_close($conn_id);
我意識到,我可能失去了一些東西死的簡單,任何幫助嗎?