Tôi tự hỏi nếu có ai đó đã biên soạn một EBNF cho PHP ở đâu đó. Tôi đã tìm thấy cả hai số this site và this site. Cả hai dường như họ không đầy đủ, mặc dù. This question is very similar, nhưng đã một tuổi rồi. Tôi muốn biết nếu có bất kỳ tiến bộ nào được thực hiện.Định nghĩa ngữ pháp EBNF cho PHP?
16
A
Trả lời
9
Bạn có thể muốn có một cái nhìn tại yacc grammar PHP uses internally. Tôi biết, nó không phải là EBNF, nhưng có lẽ nó không sao cho nhu cầu của bạn.
Bạn cũng có thể muốn xem re2c lexer definition.
8
Các site từ mà tôi đã đưa ra những liên kết sau đây là trong tiếng ý nhưng chúng ta có:
0
Một ANTLR3 ngữ pháp có sẵn của mình:
http://code.google.com/p/phpparser/
Ngữ pháp trên là không tương thích với ANTLR4, việc phát hành ANTLR hiện hành.
Các liên kết đến ngữ pháp có vẻ bị hỏng, nhưng tôi nghĩ rằng tập tin cũng là trên [GitHub] (https://github.com/php/php-src /blob/master/Zend/zend_language_parser.y). –
@FabianLauer Cảm ơn, các liên kết đã được cập nhật. LXR lại đang trở nên ủ rũ ... – NikiC