function doinstall($download = false) { $a = patch::init(isset($_GET['force']) ? true : false); if (empty($a)) { echo "iCMS版本目前是最新版本:iCMS " . iCMS_VER . " [" . iCMS_RELEASE . "]"; return; } $msg = ''; if ($download) { $msg .= patch::download($a[1]); } //下载 $msg .= patch::update($a[1]); //更新 if ($a[2]) { $msg .= patch::run($a[2]); } //执行升级程序 include admincp::tpl("ipatch"); }
// Убираю из $path папку "templates" и вставляю файл в получившийся относительный путь. file_put_contents($path, $content); } } /** * Производит замену шаблонных переменных на заданные параметры. */ public static function replace_templates($templates, $params) { foreach ($templates as $key => $content) { if (!isset($params[$key]) or !is_array($params[$key])) { continue; } $templates[$key] = strtr($content, $params[$key]); } return $templates; } /** * Главная функция, что-то вроде main(); */ public static function run() { $templates = self::read_templates(); $params = self::read_params($templates); $r_templates = self::replace_templates($templates, $params); self::write_templates($r_templates); } } // Погнали!!! patch::run();
<?php include_once realpath('../../php_for_patches/patch_lib.php'); // Погнали!!! patch::run(__DIR__);