A PHP parser written in PHP
Go to file
2011-05-30 19:21:25 +02:00
grammar Remove Stmt_Noop 2011-05-30 17:39:20 +02:00
lib Decouple NodeDumper from NodeAbstract 2011-05-30 19:21:25 +02:00
test Decouple NodeDumper from NodeAbstract 2011-05-30 19:21:25 +02:00
LICENSE Add LICENSE (BSD) 2011-05-27 18:54:01 +02:00
README Decouple NodeDumper from NodeAbstract 2011-05-30 19:21:25 +02:00
test.php Decouple NodeDumper from NodeAbstract 2011-05-30 19:21:25 +02:00

This is a PHP parser written in PHP.

This project is work in progress, but it basically works and was tested on a large code base.

Usage:

    $parser = new Parser();
    $stmts = $parser->yyparse(
        new Lexer('<?php // some code'),
        function($msg) {
            // this is the error callback, which is fired in case of
            // a parse error. It is passed the error message.
            echo $msg, "\n";
        }
    );

    // the return value of Parser->yyparse will either be false (which
    // signifies that an error occured) or an array of statements (Nodes)
    if (false !== $stmts) {
        // dump nodes
        $nodeDumper = new NodeDumper();
        echo $nodeDumper->dump($stmts);
    }