php框架

 首页 > php框架 > YII > yii 操作session

yii 操作session

分享到:
【字体:
导读:
          在 Yii框架中使用session 的笔记: 首先,在Yii框架中,你不需要像标准PHP代码那样使用 session_start() , 在Yii框架中, autoStart 属性缺省被设置为 true ,所以, 虽然没有使用 session_start() ,你...

在 Yii框架中使用session 的笔记:

首先,在Yii框架中,你不需要像标准PHP代码那样使用session_start(),
在Yii框架中,autoStart 属性缺省被设置为true,所以,
虽然没有使用session_start(),你仍然可以使用$_SESSION全局变量,但最好使用
Yii框架封装的Yii::app->session:

设置session变量:
Yii::app()->session['var']='value';
使用: echo Yii::app()->session['var'];
移除: unset(Yii::app()->session['var']);

更为复杂一点的使用时如何配置你的session
配置项可设在 protected/config/main.php的components中:

'session'=>array(
   'autoStart'=>false(/true),
   'sessionName'=>'Site Access',
   'cookieMode'=>'only',
   'savePath'='/path/to/new/directory',
),

将session保持在数据库的设置:
'session' => array (
    'class' => 'system.web.CDbHttpSession',
    'connectionID' => 'db',
    'sessionTableName' => 'actual_table_name',
),

好,还有什么呢?对了,为了调试,有时需要知道当前用户的session ID,
该值就在 Yii::app()->session->sessionID 中。

最后,当用户退出登录(logout),你需要消除痕迹,可使用:
Yii::app()->session->clear() 移去所有session变量,然后,调用
Yii::app()->session->destroy() 移去存储在服务器端的数据。
分享到:
Yii使用公共函数
在网站项目中,没必要把公用的函数写成一个工具类,有时候面向过程其实更方便。 在入口文件index.php里添加 require_once('protected/function.php'); 即可对其引用,成为公用的函数集合。 function.php如下:  
YII学习笔记-登录后的session的总结
在YII框架的默认的登录后的session数据是id,name,__states这三个数据。 在搭配好YII框架环境后,可以使用admin/admin,来登录系统。如果在protected/views/layouts/main.php代码中嵌套一个这样的语句 就会显示 Array ( [85cd7ad9d44e5587f655722c60fd3dd9__id] => admin [85cd7ad9d44e5587f655722c6...
  •         php迷,一个php技术的分享社区,专属您自己的技术摘抄本、收藏夹。
  • 在这里……