我在header.php文件中有以下内容,该文件包含在我的所有视图中:
$dh = opendir(Vs.get_class($this).'/js') ;
while($script = readdir($dh)) {
if(!is_dir($script))
{
echo '<script type="text/javascript" src="js/'.$script.'"></script>' ;
}
}
$dh = opendir(Vs.get_class($this).'/css') ;
while($css = readdir($dh)) {
if(!is_dir($css))
{
echo '<link type="text/css" href="css/'.$css.'" rel="stylesheet"/>' ;
}
}
它的目的是为特定视图(与控制器同名,因此get_class
)自动加载所有css和JS文件。
这应该是相关控制器的一部分还是我如何做得好?
答案 0 :(得分:2)
老兄只是使用Glob php功能。然后包括那些..它将完美地工作。你还需要传递绝对路径
foreach (glob("*.css") as $filename)
{
echo '<link type="text/css" href="css/'.$filename.'" rel="stylesheet"/>' ;
}
答案 1 :(得分:1)
仅视图中使用的脚本和内容属于视图。控制器与它无关。
观点不需要愚蠢。事实上,他们不应该。他们需要关心与准备和返回响应有关的所有事情。这甚至包括设置HTTP标头和可能的缓存逻辑。包括必要的CSS和JS脚本也是其工作的一部分。