tomzx / abstract-parser
An abstract parser written in PHP
v0.1.0
2016-01-24 13:33 UTC
Requires
- php: >=5.4.0
Requires (Dev)
- phpunit/phpunit: ~4
This package is auto-updated.
Last update: 2026-03-10 09:55:21 UTC
README
An abstract parser written in PHP. Based on nikic's PHP Parser.
Getting started
Abstract parser offers 2 interfaces which you'll want to implement:
NodeInterface: A basic interface for all of the elements of your tree structured data structure.NodeVisitorInterface: Actions to execute when entering/exiting aNodeInterfaceelement or at the beginning/end of a traversal.
Once you have implemented the NodeInterface for your data elements, you can walk through them using something like the following:
<?php $rootElement = ...; // Root element of your data structure $traverser = new NodeTraverser(); $traverser->addVisitor(new MyVisitor()); $traverser->traverse([$rootElement]);
License
The code is licensed under the MIT license. See LICENSE.