本文实例讲述了Yii2中cookie用法。分享给大家供大家参考,具体如下:
<?php
//设置方法
$cookie = new Cookie([
'name' => 'cookie_monster',
'value' => 'Me want cookie!',
'expire' => time() + 86400 * 365,
]);
\Yii::$app->getResponse()->getCookies()->add($cookie);
//读取方法
$value = \Yii::$app->getRequest()->getCookies()->getValue('my_cookie');
//给cookie加域名
$cookie = new Cookie([
'name' => 'cookie_monster',
'value' => 'Me want cookie everywhere!',
'expire' => time() + 86400 * 365,
'domain' => '.example.com' // <<<=== HERE
]);
\Yii::$app->getResponse()->getCookies()->add($cookie);
//设置登录cookie
$config = [
// ...
'components' => [
// ...
'user' => [
'class' => 'yii\web\User',
'identityClass' => 'app\models\User',
'enableAutoLogin' => true,
'loginUrl' => '/user/login',
'identityCookie' => [ // <---- here!
'name' => '_identity',
'httpOnly' => true,
'domain' => '.example.com',
],
],
'request' => [
'cookieValidationKey' => 'your_validation_key'
],
'session' => [
'cookieParams' => [
'domain' => '.example.com',
'httpOnly' => true,
],
],
],
];
//只给批定目录配置cookie
$config = [
// ...
'components' => [
// ...
'session' => [
'name' => 'admin_session',
'cookieParams' => [
'httpOnly' => true,
'path' => '/admin',
],
],
],
];
?>
希望本文所述对大家基于Yii框架的PHP程序设计有所帮助。