PHP - 包含多个css文件功能

时间:2013-04-02 05:54:14

标签: php function include

我正在尝试创建一个可以轻松加载我的css文件的函数。我没有足够的PHP知识,所以请帮助我:

我想将该功能称为:

<?php load_css('reset.css,main.css,bootstrap.css'); ?>

请告诉我如何将所有文件名与函数参数分开并逐个调用它们。我目前的职能:

<?php

load_css($files){

echo '<style src="'.$files.'"></style>';

}

?>

5 个答案:

答案 0 :(得分:2)

这里的另一个想法是简短,快速理解..

// store css file names as array..
$css = array('css1','css2','css3');

// then loop to call them one by one.
foreach($css as $style){

    echo '<style src="'.$style.'"></style>';
}

答案 1 :(得分:1)

为什么不尝试使用传统的HTML css包含?

e.g:

@import cssfile-number.css

(用不同的css文件名或数字替换-number)。

希望这有帮助!

答案 2 :(得分:1)

写下你的函数

<?php

load_css($files){

  $css=explode(",",$file);

  for($i=0;$i<count($css);$i++)
  {
   echo '<style src="'.$css[$i].'"></style>';
  }

}

?>

答案 3 :(得分:1)

试试这个

load_css($files){
    $files = explode(",", $files);
    while(list($css) = each($files){
        echo "<style type='text/css' src='" . $css . "' ></style>";
    }
}
$css = 'css.css,css1.css,css2.css';
load_css($css);

load_css($files){
    while(list($css) = each($files){
        echo "<style type='text/css' src='" . $css . "' ></style>";
    }
}
$css = array('css.css','css1.css','css2.css');
load_css($css);

答案 4 :(得分:1)

试试这个结合并缩小你的CSS你只需要在页面上添加一个css而不是几个css文件

css.php

<?php 
$now=time()+10000;
$then="Expires: ".gmstrftime("%a,%d %b %Y %H:%M:%S GMT",$now);
header($then); 
header("Cache-Control:  public, must-revalidate"); 
header("Content-Type: text/css");
ob_start("ob_gzhandler");
set_time_limit(0);
//list of your css
$CssList=array('main.css',
'simple-lists.css');
$outt='';
foreach($CssList as $CSS){
   $outt.=minify_css($CSS);
}
function minify_css($add){
   $fp=fopen($add,'rb');
   $speed=1024*100;
   while(!feof($fp)){
     $out.=fread($fp,$speed);
   }
   $out = preg_replace('!/\*[^*]*\*+([^/][^*]*\*+)*/!', '', $out);
   /* remove tabs, spaces, newlines, etc. */
   $out = str_replace(array("\r\n", "\r", "\n", "\t", '  ', '    ', '    '), '', $out);
   //$out=str_replace("  ","",$out);
   //$out=str_replace("  ","",$out);
   return $out;
}
print($outt);
while (@ob_end_flush());
?>

将其放在标题上

<style type="text/css" src="css.php" ></style>