Yii 使用Flash数据
Yii提供了一个flash数据的概念。Flash数据是会话数据,具有以下特点 −
- 在一个请求中设置。
- 只能在下一个请求中使用。
- 之后会自动删除。
步骤1 − 在 SiteController 中添加一个 actionShowFlash 方法。
public function actionShowFlash() {
session = Yii::app->session;
// set a flash message named as "greeting"
session->setFlash('greeting', 'Hello user!');
returnthis->render('showflash');
}
步骤2 - 在 views/site 文件夹内创建一个名为 showflash.php 的视图文件。
<?php
use yii\bootstrap\Alert;
echo Alert::widget([
'options' => ['class' => 'alert-info'],
'body' => Yii::$app->session->getFlash('greeting'),
]);
?>
步骤3 - 当你在网页浏览器的地址栏中输入 http://localhost:8080/index.php?r=site/show-flash ,你将会看到以下内容。
Yii还提供以下会话类:
-
yii\web\CacheSession - 将会话信息存储在缓存中。
-
yii\web\DbSession - 将会话信息存储在数据库中。
-
yii\mongodb\Session - 将会话信息存储在MongoDB中。
-
yii\redis\Session - 使用redis数据库存储会话信息。