2011-09-13 16 views
-2

私のPHPファイルが改行を失い、奇妙なボックス/矩形の文字が表示されるような不思議な問題があります。私はそれらを修正する手がかりがなく、彼らは私のウェブサイトを妨害しています。PHPファイルの奇妙な文字

+0

なぜ人々が私の質問を投票するのですか? stackoverflowがどのように働くのかちょっと混乱しています... – 99823

+3

私はdownvoteをしませんでしたが、それは質問の性質だと思う "私はあなたに説明するか、または表示するのに気にすることはできません。つまり、少なくともスクリーンショットを提供します。簡潔さ、正確さ、そして敬意が含まれている場合は、すぐにSOが高く評価されます。 "*奇妙なボックス/長方形の文字*"は、誰かに疑問の答えが豊富であるという証拠や純粋な推測として続かせることはありません。また、「*彼らはあなたのウェブサイトをどのように破壊するかについての特定の詳細は含まれていません。非常に怠け者で、批判的ではありません。 –

答えて

2

あなたはどのエディターを使用していますか?これはMSノートパッド(他の組み合わせの中で)でUnix形式のファイルを編集しようとする症状です。

(クライアントが正しくTYPE Aを使用していたため)ファイルを取得したときに変換されなかったため、ファイルがリモートサーバーにアップロードされるFTPトランザクションによって変換されている可能性が最も高いです(TYPE Iが誤って使用されているため)。

より良いエディタ(Notepad++またはEditPadProなど)を取得するか、FTPクライアントをASCIIモード(TYPE A)に強制します。 FYI

は、* nixの上の文字だけLF(\n)で終わる行は、WindozeにそれはCRLF(\r\n)で、Mac上でそれが唯一のCR(\r)です。

+0

ありがとうございましたDave、私は試してみましょうNotePad ++ - 私はメモ帳を使っていました - それはおそらく理由 – 99823

0

WindowsとUnixの改行が異なる場合があります。

WindowsではCR+LFが使用されますが、Unixベースのシステムでは単にLFが使用されます。

も参照してください:http://en.wikipedia.org/wiki/Line_break_(computing)#Representations

PHPは両方を解析しますので、私はそれはあなたのコードが実行されていない理由である疑い。もちろん、ファイルが投稿されていない場合、これは最良の推測(および一般的な問題)です。

0

はい、ブラッド氏によると、間違った改行がある可能性があります。 * nixシステムを使用していると仮定すると、dos2unix <filename>を実行すると、Windowsエンドライン\r\nが* nixエンドライン文字\nに置き換えられます。

0

エディタメニューオプションで「改行を表示」または「特殊文字を表示」を有効にしたばかりです。だから今、目に見えない "\ n"や "\ r \ n"ではなく、それらの表現を見ています。

2

ところで、Notepad ++のFTPプラグインを使用し、FTPプラグイン(nppftp)の設定をASCIIに設定しないと、Notepad ++でこれが起こることがあります。だから私はこのポストを見つけたのです。