Php Yii包括CSS和JS文件

Php Yii包括CSS和JS文件,php,css,yii,Php,Css,Yii,我已经读了很长时间了…我很困惑- 您能否帮助了解以下两者之间的区别: Yii::app()->clientScript->registerCssFile(Yii::app()->baseUrl.'/css/some-file.css'); <link rel="stylesheet" type="text/css" href="<?php echo Yii::app()->request->baseUrl; ?>/css/some-file.cs

我已经读了很长时间了…我很困惑-

您能否帮助了解以下两者之间的区别:

Yii::app()->clientScript->registerCssFile(Yii::app()->baseUrl.'/css/some-file.css');

<link rel="stylesheet" type="text/css" href="<?php echo Yii::app()->request->baseUrl; ?>/css/some-file.css 
Yii::app()->clientScript->registerCssFile(Yii::app()->baseUrl./css/some file.css');

registercsfile
始终在
标记之间注册文件,即使您在视图中的某个位置调用它。 如果您关心HTML验证(
中的
无效),但仍希望在视图中包含CSS文件,则这将非常有用


registerCssFile
实际上有助于提高性能,因为CSS只有在您需要时才会注册。

您使用它的方式是相同的。要验证这一点,请检查页面的源(在浏览器中),并检查Yii::app()->clientScript->registerCssFile创建的语句

但是,clientScript允许您控制脚本在HTML文件中的位置。退房:并寻找位置头,位置开始,位置结束


可能更重要的是:在MVC理念中,您希望在视图文件中包含与HTML输出相关的所有内容。Yii::app()->clientScript允许您从视图文件中添加CSS和JS文件。这就是您想要的地方。

还应该注意,registercsfile的优势在于,如果您在多个位置加载CSS(例如在视图中、扩展名中等),它将防止多次加载CSS。谢谢,这就是我需要的!!您最好使用一个扩展的ClientScript组件,该组件结合并缩小css和js