Example #1
0
<?php

$includeDir = "@php_dir@" == "@" . "php_dir@" ? dirname(__FILE__) . "/.." : "@php_dir@/XRef";
require_once "{$includeDir}/XRef.class.php";
$xref = new XRef();
$parser = new XRef_Parser_PHP();
$file_name = $argc > 0 ? $argv[0] : __FILE__;
$file_content = file_get_contents($file_name);
$parsed_file = $parser->parse($file_content, $file_name);
echo "Classes: ", print_r($parsed_file->getClasses(), true), "\n\n";
echo "Methods: ", print_r($parsed_file->getMethods(), true), "\n\n";
echo "Constants: ", print_r($parsed_file->getConstants(), true), "\n\n";
class ExampleClass extends Exception
{
    public function __construct($message)
    {
        parent::__construct($message);
    }
}
Example #2
0
    $data = function_exists('gzdecode') ? gzdecode($gzencoded) : gzinflate(substr($gzencoded, 10, -8));
    if (!$data) {
        throw new Exception();
    }
};
my_echo("PHP-P gzdecode time", $b->timeIt($f), "sec");
$stmts_array = array_cast_recursive($stmts);
$serialized = serialize($stmts_array);
my_echo("PHP-P array serialized", strlen($serialized), "bytes");
$f = function () use($serialized) {
    $stmts = unserialize($serialized);
};
my_echo("PHP-P array unserialize time", $b->timeIt($f), "sec");
$xref = new XRef();
// init autoload etc
$parser = new XRef_Parser_PHP();
$f = function () use($parser, $code, $filename) {
    $pf = $parser->parse($code, $filename);
    $pf->release();
};
my_echo("XRef internal parser", $b->timeIt($f, 30), "sec");
$slices = array();
$pf = $parser->parse($code, $filename);
$project_database = new XRef_ProjectDatabase();
foreach ($xref->getPlugins("XRef_IProjectLintPlugin") as $id => $plugin) {
    $slices[$id] = $plugin->createFileSlice($pf);
}
$slices['_db'] = $project_database->createFileSlice($pf);
$pf->release();
$serialized = serialize($slices);
my_echo("XRef serialized size", strlen($serialized), "bytes");