私は最近、行末に「CRLF」や「LF」ではなく「CR」しかないコード行が原因で、PHP が奇妙な動作をすることを発見しました。それが何であるかとして解釈します:改行ではなく改行です。
以前はそのような問題はありませんでしたが、最近、「Enter」を押して新しい行に移動すると、notepad ++ が CR のみを配置することがあることを発見しました...これにより、スクリプトの動作が悪くなりました。
たとえば、この Hello World スクリプトは、行が LF または CRLF で終了している場合に正常に動作しますが、CR だけでクラッシュします (少なくとも、私は peer1 サーバーと hostgator サーバーの両方でその問題を再現します。他の誰かが別の経験をしていますか?)...
<?php
Header( "HTTP/1.1 301 Moved Permanently" );
Header( "Location: http://www.cnn.com/" );
?>
そして、私はこのエラーを受け取ります:
致命的なエラー: 1 行目の /home/bernatch/public_html/test-redir-cr.php の未定義関数 phpheader() の呼び出し
明らかに、PHP は<?php
コードとヘッダー関数が同じ行にあると認識しています...
私の質問は: a) PHP に単一の CR をまったく別の行として解釈させる方法はありますか?
また
b) Enter キーを押すたびに、notepad++ に強制的に CRLF または LF を入力させる方法はありますか?