您的位置:首页 > 编程语言 > PHP开发

【ThinkPHP 开发辅助系统】简化加载资源文件

2016-01-22 00:00 337 查看
摘要: 基于thinkphp开发的一个辅助系统,简化开发系统时繁琐、重复的创建控制器、模型的过程,甚至可以根据表结构设计表单。

特别是在使用bootstrap框架的时候引入很多js和css文件,虽然官方也提供了load、css、js等标签,但也仅仅是简写了html标签而已。
例如在assets目录下有主题文件夹theme1,在主题文件夹中有css、js和各种控件的目录,我们是否能只需要一个标签引入所有资源文件呢,利用thinkphp的自定义标签功能当然是能实现的了,代码如下

function _load($attr,$info){
extract($attr);
if (!$type) $type = 'js';
if(!$dir) $dir = 'assets/';
if($theme) $dir .= $theme.'/';
if($path) $dir = $path;
$fs = explode(",", $href);
foreach ($fs as $k) {
$f = $dir.$k;
if ($type == 'js') {
$s .= '<script type="text/javascript" src="'.$f.'.'.$type.'"></script>'."\n";
}elseif ($type == 'css') {
$s .= '<link rel="stylesheet" href="'.$f.'.'.$type.'">'."\n";
}
}
return $s;
}

使用

<Ui:load theme="theme1" type="css" href="css/styles,fonts/font-awesome/css/font-awesome.min" />

相当于

<link rel="stylesheet" href="assets/theme1/css/styles.css">
<link rel="stylesheet" href="assets/theme1/fonts/font-awesome/css/font-awesome.min.css">
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: