1

我正在导出一些数据,制作文件并将数据写入文件......

我的文件出现在 ftp 服务器上,但它是空的...

这是代码。

//Connect to the FTP server
$ftpstream = @ftp_connect('localhost');

//Login to the FTP server
$login = @ftp_login($ftpstream, 'some_login', 'some_password');
if($login) {
//We are now connected to FTP server.
//Create a temporary file
$temp = tmpfile();

//Upload the temporary file to server
@ftp_fput($ftpstream, '/httpdocs/itineraryschedule.txt', $temp, FTP_ASCII);

//Make the file writable by all
ftp_site($ftpstream,"CHMOD 0777 /httpdocs/itineraryschedule.txt");

//Write to file
$fp = fopen('var/www/vhosts/cruiseandmaritime.com/httpdocs/itineraryschedule.txt', 'w');
fputs($fp, 'some data');
fclose($fp);

//Make the file writable only to owner
ftp_site($ftpstream,"CHMOD 0644 /httpdocs/itineraryschedule.txt");
}

我很困惑!

富有的 :)

4

2 回答 2

2

去掉@看看有没有报错

还有你的路径

$fp = fopen('var/www/vhosts/cruiseandmaritime.com/httpdocs/itineraryschedule.txt', 'w');

似乎有点不对劲

$fp = fopen('/var/www/vhosts/cruiseandmaritime.com/httpdocs/itineraryschedule.txt', 'w'); 也许?

于 2012-06-29T09:57:43.057 回答
0

我不知道你正在使用的图书馆。但是代码似乎在上传之前上传了您刚刚创建的 tmpfile() 。这就是它为空的原因。

看来您是在本地编写要推送到 FTP 服务器的数据。var/www/vhosts/cruiseandmaritime.com/httpdocs/itineraryschedule.txt就在你的机器上。尝试上传它ftp_fput- 这应该可以解决问题。

于 2012-06-29T09:57:27.097 回答