Я знаю, что вопрос Lex и Yacc в PHP задавали раньше, чем год назад.
Есть ли новый зрелый генератор парсера PHP сейчас? Мои поиски привели меня к следующим: что вы думаете о них, какие-то другие?
[Ответ:] Кто-то дал мне эту замечательную ссылку на старый вопрос: есть ли альтернатива для flex / bison, которая может использоваться на 8-битных встроенных системах?
Эти сообщения позволили мне понять большую часть генерируемого кода ANTLR. Поэтому мой выбор остается прежним: ANTLR, хотя проект кажется мертвым. Надеюсь, мне не придется менять код, так как я хотел бы сохранить его поддерживаемым.
Я подожду немного, чтобы узнать, есть ли другой ответ, иначе я согласен с вашим советом продолжать использовать ANTLR
Я бы предложил попробовать ANTLR. ANTLRWorks может оказаться полезным.
Я написал генератор парсеров LL (1) сам в чистом PHP, поскольку мне не было известно о других решениях на основе PHP.
Я портировал Jison, клон Bison в javascript, к php. Результатом является синтаксический анализатор, способный обрабатывать очень простой и очень сложный лексинг / синтаксический анализ. Теперь это часть Джисона, но в моей вилке есть несколько обновлений.
Файлы находятся здесь . См. Readme на этой странице, вы одновременно создаете парсер javascript и php, способный делать то же или разные вещи.
Это стабильно, быстро, легко и весело в использовании.
Существует PEG для php https://github.com/hafriedlander/php-peg