Yii框架作为一款高性能的PHP开发框架,本身没有内置前端UI组件,很多开发者会选择集成Bootstrap来快速实现响应式页面布局。Bootstrap作为主流的前端框架,提供了丰富的CSS样式和JS组件,和Yii结合可以大幅提升开发效率。

方式一:通过Composer安装官方扩展包
Yii2官方提供了yii2-bootstrap扩展包,这是最推荐的集成方式,安装后会自动处理资源加载和组件适配问题。
步骤1:安装扩展包
在项目根目录下执行Composer命令安装扩展:
composer require yiisoft/yii2-bootstrap
步骤2:配置资源包
安装完成后,扩展会自动注册Bootstrap的资源包,不需要额外配置。如果需要全局启用Bootstrap的CSS和JS,可以在项目的布局文件中添加资源注册代码:
<?php use yiibootstrapBootstrapAsset; BootstrapAsset::register($this); ?>
步骤3:使用Bootstrap组件
安装完成后可以直接使用扩展提供的Bootstrap组件类,比如按钮、导航栏等,以下是一个按钮组件的示例:
<?php
use yiibootstrapButton;
echo Button::widget([
'label' => '提交',
'options' => ['class' => 'btn btn-primary']
]);
?>
方式二:手动引入Bootstrap资源文件
如果不想使用官方扩展包,也可以手动下载Bootstrap的资源文件,通过Yii的资源管理机制引入。
步骤1:下载资源文件
从Bootstrap官网下载编译好的CSS和JS文件,将css、js、fonts三个文件夹放到项目的web/bootstrap目录下。
步骤2:定义资源包
在common/assets目录下新建BootstrapManualAsset.php文件,定义资源包:
<?php
namespace commonassets;
use yiiwebAssetBundle;
class BootstrapManualAsset extends AssetBundle
{
public $basePath = '@webroot/bootstrap';
public $baseUrl = '@web/bootstrap';
public $css = [
'css/bootstrap.min.css',
];
public $js = [
'js/bootstrap.min.js',
];
public $depends = [
'yiiwebJqueryAsset',
];
}
?>
步骤3:注册资源包
在布局文件或者需要使用Bootstrap的页面中注册该资源包:
<?php use commonassetsBootstrapManualAsset; BootstrapManualAsset::register($this); ?>
集成后的基本使用说明
集成完成后,可以直接在视图文件中使用Bootstrap的原生类名编写HTML结构,比如创建一个响应式导航栏:
<nav class="navbar navbar-default">
<div class="container-fluid">
<div class="navbar-header">
<button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#bs-example-navbar-collapse-1">
<span class="sr-only">切换导航</span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>
<a class="navbar-brand" href="#">Yii项目</a>
</div>
<div class="collapse navbar-collapse" id="bs-example-navbar-collapse-1">
<ul class="nav navbar-nav">
<li class="active"><a href="#">首页</a></li>
<li><a href="#">关于我们</a></li>
</ul>
</div>
</div>
</nav>
常见问题排查
- 如果页面没有加载Bootstrap样式,检查资源包的
$basePath和$baseUrl配置是否正确,确保文件路径可访问。 - 如果使用扩展包的组件类报错,检查扩展包是否安装成功,执行
composer show yiisoft/yii2-bootstrap查看安装状态。 - Bootstrap的JS组件依赖jQuery,手动引入时需要确保jQuery资源在Bootstrap的JS之前加载,通过资源包的
$depends属性配置即可。
YiiBootstrapfrontend_integrationasset_management修改时间:2026-07-23 05:48:11