urban d63a4904f9 trxbot há 10 meses atrás
..
src d63a4904f9 trxbot há 10 meses atrás
.php_cs.dist d63a4904f9 trxbot há 10 meses atrás
CHANGELOG.md d63a4904f9 trxbot há 10 meses atrás
LICENSE d63a4904f9 trxbot há 10 meses atrás
README.md d63a4904f9 trxbot há 10 meses atrás
composer.json d63a4904f9 trxbot há 10 meses atrás
composer.lock d63a4904f9 trxbot há 10 meses atrás

README.md

Tokenizer

A small library for converting tokenized PHP source code into XML.

Test Scrutinizer Code Quality Code Coverage Build Status

Installation

You can add this library as a local, per-project dependency to your project using Composer:

composer require theseer/tokenizer

If you only need this library during development, for instance to run your project's test suite, then you should add it as a development-time dependency:

composer require --dev theseer/tokenizer

Usage examples

$tokenizer = new TheSeer\Tokenizer\Tokenizer();
$tokens = $tokenizer->parse(file_get_contents(__DIR__ . '/src/XMLSerializer.php'));

$serializer = new TheSeer\Tokenizer\XMLSerializer();
$xml = $serializer->toXML($tokens);

echo $xml;

The generated XML structure looks something like this:

<?xml version="1.0"?>
<source xmlns="https://github.com/theseer/tokenizer">
 <line no="1">
  <token name="T_OPEN_TAG">&lt;?php </token>
  <token name="T_DECLARE">declare</token>
  <token name="T_OPEN_BRACKET">(</token>
  <token name="T_STRING">strict_types</token>
  <token name="T_WHITESPACE"> </token>
  <token name="T_EQUAL">=</token>
  <token name="T_WHITESPACE"> </token>
  <token name="T_LNUMBER">1</token>
  <token name="T_CLOSE_BRACKET">)</token>
  <token name="T_SEMICOLON">;</token>
 </line>
</source>