0
在运行PHP 5.2.17的服务器上,使用任何利用内置ftp包装器上传文件的函数,创建一个空文件在服务器上:php FTP Wrapper写空文件(0字节),FTP扩展不是
file_put_contents()
回报与字节copy()
的准确数量也将返回真
两个创建文件,但它是空的。
当使用FTP扩展名ftp_put()
进行尝试时,无论是在二进制还是ascii模式下,它都能正常工作。
在我的工作站上使用PHP 5.3.10,它在某种程度上也适用于包装。
在代码:
$source = '/tmp/testfile';
$target = 'ftp://user:[email protected]/testfile';
copy($source, $target);
没有给出错误或警告,但保留在服务器上的一个空文件。
$source = '/tmp/testfile';
$target = 'testfile';
$ftp = ftp_connect('example.com');
ftp_login($ftp, 'user', 'pass');
ftp_put($ftp, $target, $source, FTP_ASCII);
ftp_close($ftp);
在各方面都有效。
感谢您的任何建议!
您应该提供代码和调试输出,我们无法准确猜测您在做什么。 – 2012-07-12 15:21:37
还要确保您正在使用的服务器未满(磁盘配额已超出),否则您上传的所有内容都将被创建,但始终为空[0字节]。 – 2012-07-12 15:27:44
Thx为您的意见。 @DexterHuinda ftp_put()适用于我,所以没有重复,并且服务器不能满。 – Andy 2012-07-12 15:32:25