Home >Backend Development >PHP Tutorial >CI框架中cookie的操作方法分析_PHP

CI框架中cookie的操作方法分析_PHP

WBOY
WBOYOriginal
2016-05-31 18:15:28770browse

本文实例讲述了CI框架中cookie的操作方法。分享给大家供大家参考。具体分析如下:

第一种设置cookie的方式:采用php原生态的方法设置的cookie的值

代码如下:

setcookie("user_id",$user_info['user_id'],86500); 
setcookie("username",$user_info['username'],86500); 
setcookie("password",$user_info['password'],86500); 
//echo $_COOKIE['username'];


 
第二种设置cookie的方式:通过CI框架的input类库设置cookie的值

代码如下:

$this->input->set_cookie("username",$user_info['username'],60); 
$this->input->set_cookie("password",$user_info['password'],60); 
$this->input->set_cookie("user_id",$user_info['user_id'],60); 
//echo $this->input->cookie("password");//适用于控制器 
//echo $this->input->cookie("username");//适用于控制器 
//echo $_COOKIE['username'];//在模型类中可以通过这种方式获取cookie值 
//echo $_COOKIE['password'];//在模型类中可以通过这种方式获取cookie值


 
第三种设置cookie的方式:通过CI框架的cookie_helper.php辅助函数库设置cookie的值 

代码如下:

set_cookie("username",$user_info['username'],60); 
set_cookie("password",$user_info['password'],60); 
set_cookie("user_id",$user_info['user_id'],60); 
//echo get_cookie("username");

例子自定义扩展核心控制器类

代码如下:

class MY_Controller extends CI_Controller{ 
 
    //构造函数:在构造函数中判断用户是否已经登陆,如果登陆,可进入后台控制器,返回跳转到登陆页面 
    public function __construct(){ 
        parent::__construct(); 
        $this->load->helper("url"); 
        $this->load->model("user_model");//user_model模型类实例化对象 
        $this->cur_user=$this->user_model->is_login();//检测是否登陆,如果登陆,返回登陆用户信息,否则返回false 
        if($this->cur_user === false){ 
            header("location:".site_url("index/login")); 
        }else{ 
            //如果已经登陆,则重新设置cookie的有效期 
            $this->input->set_cookie("username",$this->cur_user['username'],60); 
            $this->input->set_cookie("password",$this->cur_user['password'],00); 
            $this->input->set_cookie("user_id",$this->cur_user['user_id'],60); 
        } 
    } 

?>

希望本文所述对大家基于CI框架的PHP程序设计有所帮助。

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn