我需要从远程服务器打开一个文本文件,并使用php fopen()在其中写入一些信息。
allow_url_fopen打开(在我的php.ini中)
我可以读取此远程文件,但不能写入它。
代码:
<?php
$data = 'some text';
$filename = 'ftp://admin:[email protected]/web/domain.com/public_html/test2.txt';
$fh = fopen($filename,'r');
echo fread($fh, filesize($filename));
fclose ( $fp );
$fh = fopen($filename,'w+');
if ($fp) {
echo 'remote file is opened, writing data';
fwrite ( $fp, $data );
fclose ( $fp );
}
else
{
echo 'remote file not opened';
}
?>
显示:一些文字远程文件未打开
我该如何写文件?
允许读取通过FTP访问现有文件和创建新文件。
您可以打开文件进行读取或写入,但不能同时打开。 如果远程文件已经存在于ftp服务器上,并且您尝试打开该文件进行写入但未指定上下文选项覆盖,则连接将失败。如果需要通过ftp覆盖现有文件,请在上下文中指定overwrite选项,然后打开文件进行写入。或者,您可以使用FTP扩展名。
也请注意:
[Note:追加
文件可以通过ftp:// URL包装器附加。
我不确定覆盖是否意味着截断。如果是这样,您可以下载,修改然后上传和覆盖,或查看PHP: FTP Functions。