我无法让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);
我意识到,我可能失去了一些东西死的简单,任何帮助吗?