太早起來.再作點小記錄.
因為某些需求和權限不夠的情況下,
需要處理大量的 JS 和 CSS 輸出.
不過由於一行一行輸出會影響到加載速度等問題.
就只好用這種奇技淫巧的方式來整合檔案.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36
| <?php if (defined("IN_APPS") === false) exit("Access Dead");
$app->hook('app.asset.cache', function() use ($app) { $app->etag(Util::to_etag($app->config('asset_version'))); $app->expires('+1 week'); });
$app->get('/asset/application.css', function() use ($app) { $css_content = ""; $css_files = array('bootstrap.css', 'default.css', 'bootstrap.responsive.css'); foreach($css_files as $css_file) { $css_content .= file_get_contents(WWW_ROOT.'/public/stylesheets/'.$css_file); }
$app->applyHook('app.asset.cache'); $app->contentType('text/css'); $app->response()->body($css_content); });
$app->get('/asset/application.js', function() use ($app) { $js_content = ""; $js_files = array( 'jquery.js', 'jquery.timeago.js', 'jquery.simply.countable.js', 'jquery.countup.js', 'bootstrap.js', 'default.js' ); foreach($js_files as $js_file) { $js_content []= file_get_contents(WWW_ROOT.'/public/javascripts/'.$js_file); }
$app->applyHook('app.asset.cache'); $app->contentType('application/javascript'); $app->response()->body(implode("\n\n", $js_content)); }); ?>
|