Я проверил свой код с помощью php codesniffer и получил эту ошибку:
Он говорит, что ошибка произошла в первой строке кода, но все, что у меня есть в первой строке моего кода, это открывающий тег php:
<?php
Есть ли программа, чтобы показать эти символы и исправить это? Я также попробовал команду phpcbf, но она не работает:
Я предполагаю, что вы используете Windows.
Ваш файл использует строки Unix («\ n»)
Windows использует («\ r \ n»)
Вы можете конвертировать строки в командной строке с помощью
type input_filename | more /P > output_filename
или откройте ваши исходные файлы с помощью редактора, такого как notepad ++, и измените конец строки на windows
PHP codeniffer должен проверять EOL по умолчанию ОС, на которой он работает, поэтому EOL будет \ n для Linux и \ r \ n для Windows.
Скорее всего, произошло то, что один из проверяемых файлов имеет неправильный или смешанный EOL для текущей ОС (это то, что случилось со мной). Это может быть неочевидным, поскольку файловые редакторы часто компенсируют это.
Многие редакторы, тем не менее, имеют функцию, чтобы сказать вам, что такое EOL файла, или даже сбросить его. Notepad ++ в Windows имеет это из меню Edit. На Linux, используйте file
команда для обнаружения и использования dos2unix
или же unix2dos
, по мере необходимости.