Cookie是浏览器在用户系统上存储的一个小型文本文件。 Cookies被设计为网站记住状态信息或记录用户浏览活动的可靠机制。 Phalcon \ Http \ Response \ Cookies是存储cookie的目录。 Cookie管理有助于在请求执行期间将Cookie存储在上述目录下, 并在请求结束时自动发送。
句法:
要检查先前设置的cookie:$ var_name->
cookies->
has(‘
checking_name’
);
获取cookie:$ var_name->
cookies->
get(‘
cookie_name’
);
获取cookie值:$ var_name->
cookies->
getValue();
设置cookie:$ var_name->
cookies->
set(cookie_name, ‘
some value’
, time()+ 15 * 86400);
删除cookie:$ var_name->
cookies->
get(‘
cookie_name’
)->
delete();
Cookie生成示例
<
?phpuse Phalcon\Mvc\Controller;
class SessionController extends Controller{public function loginAction(){// Check if the cookie has previously setif ($this->
cookies->
has('cookie-name')) {// Get the cookie$rememberMeCookie = $this->
cookies->
get('cookie-name');
// Get the cookie's value$value = http://www.srcmini.com/$rememberMeCookie->
getValue();
}}public function startAction(){$this->
cookies->
set('cookie-name', 'some value', time() + 15 * 86400);
}public function logoutAction(){$rememberMeCookie = $this->
cookies->
get('cookie-name');
// Delete the cookie$rememberMeCookie->
delete();
}}
在上面的代码执行中, 将生成以下文件
文章图片
现在, 通过以下代码实现并生成cookie:在此cookie中, 名称为” login-action” , 值为” srcmini” 。
<
?phpclass UsersController extends \Phalcon\Mvc\Controller { public function indexAction() { if ($this->
cookies->
has("login-action")) { // Get the cookie $loginCookie = $this->
cookies->
get("login-action");
// Get the cookie's value $value = http://www.srcmini.com/$loginCookie->
getValue();
echo($value);
} $this->
cookies->
set("login-action", "srcmini", time() + 15 * 86400 );
} }
输出
文章图片
Cookie的加密/解密 Cookies包含有关用户浏览的重要信息, 因此默认情况下会对其进行加密。它在发送给客户端时被加密, 而在用户检索时被解密。
【Phalcon Cookie管理】要禁用加密, 我们可以在代码中进行以下更改:
<
?phpuse Phalcon\Http\Response\Cookies;
$di->
set('cookies', function () {$cookies = new Cookies();
$cookies->
useEncryption(false);
return $cookies;
});
推荐阅读
- Phalcon表单用法例子
- 跨站请求伪造(CSRF)保护
- Phalcon连接到数据库
- Phalcon配置详解
- Perl While循环
- Android测试(Espresso 自动化测试)
- Android测试(Instrumented 单元测试)
- Android测试(Local 单元测试)
- Android 四大组件Service 使用