Jeremy wrote:
> Is there any way to access the parse tree of a PHP file from within PHP?
> 
> I'm trying to write a code-checking utility to find namespace-related
> problems in code and alert me to them.  Specifically:
> 
> namespace foo\bar;
> 
> function foobar()
> {
>     try
>     {
>         ...
>     }
>     catch(Exception $e)
>     {
>         //nothing will be caught
>         //I forgot to qualify
>         //code silently fails
>     }
> }
> 
> I didn't want to put a whole lot of work into this, so I'm trying to
> avoid having to write in C/flex/ANTLR/etc.  There's a bit of
> grease-monkey internals stuff in PHP so I thought I would check.

Hi Jeremy,

The parser file needs to be updated to reflect additions in PHP 5.3, but
http://pear.php.net/PHP_Parser provides an example of a parser in which
you could actually check for every class reference at parse-time,
ignoring everything else.

It's built using the tokenizer extension as a lexer, and a port of lemon
to PHP for the parser (zend_language_parser.y is also ported into lemon
format)

Greg

-- 
PHP Internals - PHP Runtime Development Mailing List
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to