在于前端配合中,往往会有重复引入JS和CS的情况,为了避免这种没有必要的请求,做了2个小方法
/**
* 引入前端样式或脚本的方法
* @param string $cssurl // css样式或js脚本地址
* @param string $version // 版本号
* @param return string // 返回css样式或js脚本地址
* example // CscHtml::importCss('a.css,b.css,c.css')
*/
public static function importCss($resurl, $version = ''){
Global $cscCSS;
$csses = explode(',', $resurl);
$cscCSS = $cscCSS? $cscCSS:array();
$string = '';
if($csses && is_array($csses)){
$i = 0;
foreach($csses as $value){
$value = trim($value); // 清除两边空格
if(!in_array($value, $cscCSS)){
if($i==0){
$string = $value;
}else{
$string .= ','.$value;
}
array_push($cscCSS, $value);
$i++;
}
}
$v = $version? '?v='.$version:'';
$string = $string? STYLE_URL.$string.$v:'';
}
echo $string? '<link rel="stylesheet" href="'.$string.'" />':'';
}
/**
* 引入前端样式或脚本的方法
* @param string $cssurl // js脚本地址
* @param string $version // 版本号
* @param return string // 返回js脚本地址
* example // CscHtml::importJs('a.css,b.css,c.css')
*/
public static function importJs($resurl, $version = ''){
Global $cscJs;
$csses = explode(',', $resurl);
$cscJs = $cscJs? $cscJs:array();
$string = '';
if($csses && is_array($csses)){
$i = 0;
foreach($csses as $value){
$value = trim($value); // 清除两边空格
if(!in_array($value, $cscJs)){
if($i==0){
$string = $value;
}else{
$string .= ','.$value;
}
array_push($cscJs, $value);
$i++;
}
}
$v = $version? '?v='.$version:'';
$string = $string? STYLE_URL.$string.$v:'';
}
echo $string? '<script src="'.$string.'"></script>':'';
}
这些都是静态方法,刚不小心在本类中用到习惯性的$this->了一下,结果就Using $this when not in object contex了 ,o(∩_∩)o 哈哈,要注意!!!