php parsing lexical-analysis parser-generator

PHP Lexer y Parser Generator?



parsing lexical-analysis (3)

Hay PEG para php https://github.com/hafriedlander/php-peg

Sé que le preguntaron a Lex y Yacc en PHP, pero hace 1 año.

¿Hay algún nuevo generador de analizador de PHP maduro ahora? Mis búsquedas me llevaron a los siguientes, ¿qué piensas de ellos, de los demás?

  • code.google.com/p/antlrphpruntime/: la versión de ANTLR PHP pero parece ser una versión muy beta y creo que hay mucho trabajo por hacer. La ventaja es que puedo escribir la gramática en la herramienta ANTLR Works.
  • pear.php.net/package/PHP_ParserGenerator/docs/0.1.7/: Lo intenté, pero parece muy complicado, para usarlo con PHP_LexerGenerator.
  • sourceforge.net/projects/lime-php/: no lo intenté
  • bitbucket.org/wez/lemon-php/downloads: No lo intenté
  • bitbucket.org/wez/jlexphp/downloads: No lo intenté

[Respuesta:] Alguien me dio este maravilloso enlace a una vieja pregunta: ¿hay alguna alternativa para flex / bison que se pueda usar en sistemas integrados de 8 bits?

Estas publicaciones me permitieron comprender la mayor parte del código ANTLR generado. Entonces mi elección sigue siendo la misma: ANTLR aunque el proyecto parece muerto. Espero no tener que modificar el código ya que me gustaría mantenerlo.

Esperaré un poco para ver si hay otra respuesta; de lo contrario, aceptaré su consejo para seguir usando ANTLR


He portado a Jison, un clon de Bison en javascript, a php. Los resultados son un analizador asesino, capaz de manejar lexing / parsing muy simple y muy complejo. Ahora es parte de Jison, pero hay algunas actualizaciones en mi fork .

Los archivos estan aqui Consulte el archivo Léame en esa página, cree un analizador de JavaScript y php al mismo tiempo que sean capaces de hacer lo mismo o cosas diferentes.

Es estable, rápido, fácil y divertido de usar.


Propondría probar ANTLR. ANTLRWorks podría ser útil.

Escribí un generador de analizadores LL (1) en PHP puro, ya que no conocía otras soluciones basadas en PHP.