Exemplo n.º 1
0
function quickTokenExtractArray($php, $varname)
{
    $reader = new QuickArrayReader("<?php {$php}");
    return $reader->getVar($varname);
}
if (count($args)) {
    $sources = $args;
} else {
    $sources = array_merge(glob("{$IP}/extensions/*/*.i18n.php"), glob("{$IP}/languages/messages/Messages*.php"));
}
foreach ($sources as $sourceFile) {
    $rel = basename($sourceFile);
    $out = str_replace('/', '-', $rel);
    $sourceData = file_get_contents($sourceFile);
    if (preg_match('!extensions/!', $sourceFile)) {
        $sourceData = LocalisationUpdate::cleanupExtensionFile($sourceData);
        $items = 'langs';
    } else {
        $sourceData = LocalisationUpdate::cleanupFile($sourceData);
        $items = 'messages';
    }
    file_put_contents("{$out}.txt", $sourceData);
    $start = microtime(true);
    $eval = evalExtractArray($sourceData, 'messages');
    $deltaEval = microtime(true) - $start;
    $start = microtime(true);
    $quick = quickTokenExtractArray($sourceData, 'messages');
    $deltaQuick = microtime(true) - $start;
    $start = microtime(true);
    $token = confExtractArray($sourceData, 'messages');
    $deltaToken = microtime(true) - $start;