"Es verursacht Fehler in meinen PHP-Skripten" -> Das ist seltsam? PHP sollte gut mit einem nachgestellten Zeilenumbruch funktionieren. In der Tat ist dies so ziemlich Standard. Vielleicht haben Sie eine leere Zeile nach der ?>Ausgabe von PHP an den Browser (was den Fehler "Header bereits gesendet" verursacht)? Sie benötigen kein Trailing ?>, und es wird normalerweise empfohlen, es wegzulassen, um genau dieses Problem zu vermeiden.
Martin Tournoij
Ich denke, das ist irreführend. Unsere Skripte interpretieren jede Ausgabe als Fehler.
?>
Ausgabe von PHP an den Browser (was den Fehler "Header bereits gesendet" verursacht)? Sie benötigen kein Trailing?>
, und es wird normalerweise empfohlen, es wegzulassen, um genau dieses Problem zu vermeiden.Antworten:
Dies ist keine vollständige leere Zeile, sondern nur eine letzte neue Zeile am Ende der letzten Zeile. Unix-Tools (wie das Erbe von Vim) bestehen darauf, dies hinzuzufügen, während das Windows-Betriebssystem nicht so streng ist. Weitere Informationen hierzu finden Sie unter Warum sollten Dateien mit einem Zeilenumbruch enden?
Leider ist es ziemlich komplex zu verhindern, dass Vim die letzte neue Zeile schreibt. Mein PreserveNoEOL-Plugin kann dies tun. Weitere Informationen zu Ansätzen finden Sie unter VIM Deaktivieren der automatischen Zeilenumbruch am Dateiende .
quelle
In neuen Versionen von Vim gibt es dafür endlich eine Option
(Siehe Wiki-Seite: http://vim.wikia.com/wiki/Do_not_auto-add_a_newline_at_EOF )
Fügen
~/.vimrc
Sie in dieser Zeile Folgendes hinzu:Relaunch
vim
, jetzt sollte die neue Zeile am Ende der Datei nicht hinzugefügt werden.(funktioniert nur seit vim Version 7.4.785)
quelle
Haben Sie versucht, die Datei im Binärmodus zu öffnen? Versuchen Sie es
vim -b file_name
. Die neue Zeile am Dateiende sollte nicht hinzugefügt werden.quelle
xxd
zu überprüfen, aber es fügt0a
auch im Binärmodus noch einen Zeilenvorschub ( ) hinzu .