开发手册 欢迎您!
软件开发者资料库

CodeIgniter - Cookie管理

CodeIgniter Cookie管理 - 从概述开始学习CodeIgniter,安装CodeIgniter,应用程序架构,MVC框架,基本概念,配置,使用数据库,库,错误处理,文件上传,发送电子邮件,表单验证,会话管理,Flashdata,Tempdata,Cookie管理,常用功能,页面缓存,页面重定向,应用程序分析,基准测试,添加JS和CSS,国际化,安全性。

Cookie是从Web服务器发送到客户端计算机上的一小段数据. CodeIgniter有一个名为"Cookie Helper"的帮助器用于cookie管理.

语法

set_cookie( $ name [, $ value ='' [, $ expire ='' [, $ domain ='' [, $ path ='/' [, $ prefix ='' [, $ secure = FALSE [,$ httponly = FALSE ]]]]]]]])

参数

  • $ name ( mixed ) : 此函数可用的所有参数的Cookie名称或关联数组

  • $ value ( string ) :  Cookie值

  • $ expire ( int ) : 到期前的秒数

  • $ domain ( string ) :  Cookie域名(通常为:.yourdomain.com)

  • $ path ( string ) :  Cookie路径

  • $ prefix ( string ) :  Cookie名称前缀

  • $ secure ( bool ) : 是否仅通过HTTPS发送cookie

  • $ httponly ( bool ) : 是否从JavaScript隐藏cookie

返回类型

void

set_cookie()函数中,我们可以使用两种方式传递所有值.在第一种方式中,只能传递数组,在第二种方式中,也可以传递单个参数.

语法

get_cookie( $ index [, $ xss_clean = NULL ]])

参数

  • $ index ( string ) :  Cookie名称

  • $ xss_clean ( bool ) : 是否对返回值应用XSS过滤

返回

Cookie值如果找不到则为NULL

返回类型

mixed

get_cookie()函数用于获取已经存在的cookie使用set_cookie()函数设置.

语法

delete_cookie( $ name [, $ domain ='' [, $ path = '/' [, $ prefix ='']]]])

参数

  • $ name ( string ) :  Cookie名称

  • $ domain ( string ) :  Cookie域名(通常为:.yourdomain.com)

  • $ path ( string ) :  Cookie路径

  • $ prefix ( string ) :  Cookie名称前缀

返回类型

void

delete_cookie()函数用于删除cookie().

示例

创建一个名为 Cookie_controller.php 的控制器并将其保存在 application/controller/Cookie_controller.php

load->helper(array('cookie', 'url'));       }         public function index() {          set_cookie('cookie_name','cookie_value','3600');          $this->load->view('Cookie_view');       }         public function display_cookie() {          echo get_cookie('cookie_name');          $this->load->view('Cookie_view');      }         public function deletecookie() {          delete_cookie('cookie_name');          redirect('cookie/display');       }    } ?>

创建名为 Cookie_view.php 的视图文件并将其保存在 application/views/Cookie_view.php

                   CodeIgniter View Example               Click Here to view the cookie.
       Click Here to delete the cookie.    

更改application/config/routes.php中的routes.php文件,为上述控制器添加路由,并在文件末尾添加以下行.

$route['cookie'] = "Cookie_controller"; $route['cookie/display'] = "Cookie_controller/display_cookie"; $route['cookie/delete'] = "Cookie_controller/deletecookie";

之后,您可以在浏览器中执行以下URL来执行示例.

http://yoursite.com/index.php/cookie

它将产生一个输出,如下面的屏幕截图所示.

cookie_management