Php 文件通过FTP客户端上载被损坏

Php 文件通过FTP客户端上载被损坏,php,ftp,ftp-client,Php,Ftp,Ftp Client,我试着把文件上传到我的服务器上 my.php(普通本地文件) 通过FileZilla FTP客户端上传后(远程服务器文件) //有时上面的文件会变成 //或者有时候像这样 我怀疑这是一个与服务器相关的问题,但不确定。有人能解释这个问题的答案吗 谢谢上面的评论已经建议查看ASCII/二进制模式。FTP的一个奇怪特性是,文件可以被视为ASCII文本(在这种情况下,FTP传输将自动更改行尾的编码以适合目标机器使用的编码)或二进制文件(在这种情况下,它们将在不做任何更改的情况下传输) 你在问题中提

我试着把文件上传到我的服务器上

my.php(普通本地文件)


通过FileZilla FTP客户端上传后(远程服务器文件)

//有时上面的文件会变成
//或者有时候像这样
我怀疑这是一个与服务器相关的问题,但不确定。有人能解释这个问题的答案吗


谢谢

上面的评论已经建议查看ASCII/二进制模式。FTP的一个奇怪特性是,文件可以被视为ASCII文本(在这种情况下,FTP传输将自动更改行尾的编码以适合目标机器使用的编码)或二进制文件(在这种情况下,它们将在不做任何更改的情况下传输)

你在问题中提到的残害可能没有看上去的一半糟糕;有些编辑器实际上不显示UNIX样式的行尾编码(ASCII模式下的FTP可能会将其放入文件中),即使它存在


行尾的不同编码一直是便携式计算机中令人悲伤的根源。。。在这种情况下,我能推荐的最好方法是让您尝试一下它是否能像您现在这样工作,如果不能,请尝试将您的FTP客户端的传输模式强制设置为不同的设置。

我想以0.02美元的价格购买

正如Jan所说,这绝对是一个ASCII传输问题

但是,我认为这不是FileZilla cllient的适当或预期行为

我正在通过SFTP(SSH)将Perl文件从Debian Linux客户端传输到Debian Linux服务器

FileZilla被设置为在ASCII模式下传输扩展名为.pl的文件,但这会产生伊什·库马尔在原始问题中指出的错误格式

以ASCII模式传输的文本文件从*nix传输到*nix的效果应与从Windows传输到*nix的效果一样


我把这一点归咎于Filezilla。

它是以ASCII还是二进制模式传输的?服务器上运行的是哪个ftp软件?我使用自动模式。它发生在特定的共享主机上。在其他地方,我可以正确上传文件。我已经提到了“FileZilla FTP客户端”,你也尝试过其他FTP客户端软件吗?我尝试了“二进制模式”,它工作了。所以我应该把它保持为二进制模式以便将来上传文件(图像/文件)吗?这完全取决于你。如果生成的文件工作正常,请务必使用二进制模式。有时,如果服务器希望使用与文件不同的行尾编码,那么使用二进制模式会得到令人困惑的结果,但在这种情况发生之前,您可能不需要担心。
<?php
$box_title= "SEARCH ME"
?>
// SOMETIMES ABOVE FILE BECOMES
<?php$box_title= "SEARCH ME"?>

// OR SOMETIMES LIKE THIS
<?php

$box_title= "SEARCH ME"

?>