Bạn đang sử dụng phiên bản PHP nào? Kể từ 5.3, các số dòng được bao gồm trong đầu ra lint:
[[email protected] ~]$ cat syntax_error.php
<?php
echo "This line is legal\n";
echo I'm a syntax error!\n;
echo "This line never gets reached.\n"
[[email protected] ~]$ php -l syntax_error.php
PHP Parse error: syntax error, unexpected T_ENCAPSED_AND_WHITESPACE, expecting ',' or ';' in syntax_error.php on line 3
Parse error: syntax error, unexpected T_ENCAPSED_AND_WHITESPACE, expecting ',' or ';' in syntax_error.php on line 3
Errors parsing syntax_error.php
[[email protected] ~]$
Lỗi này xuất hiện hai lần vì nó sẽ xuất hiện ở chế độ stdout và stderr. Đó là thời gian dài dài kể từ khi tôi làm việc với các tệp hàng loạt trên Windows, có thể phiên bản bạn đang sử dụng chỉ phát ra lỗi trên stderr và tệp bó đang loại bỏ đầu ra của stderr?
Ôi trời, điều đó thật bất ngờ. Bạn sẽ nghĩ rằng * yêu cầu PHP kiểm tra cú pháp của một tập tin *, theo mặc định, báo cáo lỗi cú pháp! Hãy nhớ rằng bạn có thể thao tác đối số php.ini từ dòng lệnh bằng cách sử dụng tùy chọn '-d':' php -d display_errors = 1 -l foo.php' – Charles
cảm ơn cho mẹo! (vui lòng chấp nhận câu trả lời này, không phải câu trả lời không chính xác ở trên ;-) – yoyo