Файл: contao-3.5.8/vendor/simplepie/simplepie/build/compile.php
Строк: 58
<?php
// Set up our constants
define('SP_PATH', dirname(dirname(__FILE__)));
define('COMPILED', SP_PATH . DIRECTORY_SEPARATOR . 'SimplePie.compiled.php');
function remove_header($contents)
{
$tokens = token_get_all($contents);
$stripped_source = '';
$stripped_doc = false;
$stripped_open = false;
foreach ($tokens as $value)
{
if (is_string($value))
{
$stripped_source .= "{$value}";
continue;
}
switch ($value[0])
{
case T_DOC_COMMENT:
if (!$stripped_doc)
{
$stripped_doc = true;
continue 2;
}
break;
case T_OPEN_TAG:
if (!$stripped_open)
{
$stripped_open = true;
continue 2;
}
break;
}
$stripped_source .= "{$value[1]}";
}
return $stripped_source;
}
// Start with the header
$compiled = file_get_contents(SP_PATH . '/build/header.txt');
$compiled .= "n";
// Add the base class
$contents = file_get_contents(SP_PATH . '/library/SimplePie.php');
$compiled .= remove_header($contents) . "n";
// Add all the files in the SimplePie directory
$files = new RecursiveIteratorIterator(new RecursiveDirectoryIterator(SP_PATH . '/library/SimplePie'));
foreach($files as $file_path => $info)
{
$contents = file_get_contents($file_path);
$compiled .= remove_header($contents) . "n";
}
// Strip excess whitespace
$compiled = preg_replace("#nnn+#", "nn", $compiled);
// Hardcode the build
$compiled = str_replace(
"define('SIMPLEPIE_BUILD', gmdate('YmdHis', SimplePie_Misc::get_build()))",
"define('SIMPLEPIE_BUILD', '" . gmdate('YmdHis', time()) . "')",
$compiled
);
// Finally, save
file_put_contents(COMPILED, $compiled);