Php 行尾字符无效

Php 行尾字符无效,php,command-line,command-prompt,codesniffer,Php,Command Line,Command Prompt,Codesniffer,我使用php codesniffer检查了我的代码,发现了以下错误: 它说错误发生在代码的第一行,但我在代码的第一行只有一个php开始标记: <?php 我假设您正在使用windows。 您的文件使用unix行尾(“\n”) Windows使用(“\r\n”) 可以使用以下命令转换命令行中的行尾 type input_filename | more /P > output_filename 或者使用记事本++之类的编辑器打开源文件,并将lineendings更改为windows

我使用php codesniffer检查了我的代码,发现了以下错误:

它说错误发生在代码的第一行,但我在代码的第一行只有一个php开始标记:

<?php

我假设您正在使用windows。
您的文件使用unix行尾(“\n”)
Windows使用(“\r\n”)

可以使用以下命令转换命令行中的行尾

type input_filename | more /P > output_filename

或者使用记事本++之类的编辑器打开源文件,并将lineendings更改为windows

PHP codesniffer应根据其运行的操作系统的默认EOL进行检查,因此Linux和windows的EOL将分别为\n和\r\n

最有可能的情况是,您正在检查的一个文件在当前操作系统中具有错误或混合的EOL(这就是发生在我身上的情况)。这可能并不明显,因为文件编辑器通常会对此进行补偿


不过,许多编辑器都有一个功能,可以告诉您文件的下线是什么,甚至可以重置它。Windows上的Notepad++在“编辑”菜单中具有此功能。在linux上,使用
file
命令进行检测,并根据需要使用
dos2unix
unix2dos

谢谢该命令对我不起作用,但notepad++确实起了作用: