Yii2 session的使用方法(3)

Flash数据是一种特别的session数据,它一旦在某个请求中设置后, 只会在下次请求中有效,然后该数据就会自动被删除。 常用于实现只需显示给终端用户一次的信息, 如用户提交一个表单后显示确认信息。
实现方式

// 首先,加载session组件
$session = Yii::$app->session();

// 设置名为'success' flash 信息
$session->setFlash('success','This is success!');

// 获取并显示'success' flash 信息
echo $session->getFlash('success');

// 查看'success' flash 信息是否存在
if($session->hasFlash('success')){
    // 存在,判断后,自动删除
}

// 获取所有的 flash 信息
$data = $session->getAllFlashes();

// 移除 'success' flash 信息
$session->removeFlash('success');

// 移除所有的 flash 信息
$session->removeAllFlash();

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22

// 首先,加载session组件
$session = Yii::$app->session();

// 设置名为'success' flash 信息
$session->setFlash('success','This is success!');

// 在名称为"success"的flash信息增加数据
$session->addFlash('success','I love you!');
$session->addFlash('success','I miss you!');
$session->addFlash('success','I want you!');

// 获取并显示'success' flash 信息
$data = $session->getFlash('success');
var_dump($data); 
/* 会以数组的方式呈现
array(4) { 
    [0]=> string(16) "This is success!" 
    [1]=> string(11) "I love you!" 
    [2]=> string(11) "I miss you!" 
    [3]=> string(11) "I want you!" 
}*/

 

你可能感兴趣的:(Yii2 session的使用方法(3))