yii操作session实例简介

本文简述了Yii框架中使用session的方法,具体步骤如下:

一、与标准php代码的区别:

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

二、session变量的使用:

设置session:

Yii::app()->session['var']='value';

使用session:

echo Yii::app()->session['var'];

移除session:

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() 

移去存储在服务器端的session数据。

(0)

相关推荐

  • Yii框架中 find findAll 查找出制定的字段的方法对比

    众所周知 modelName::model() -> find() //找出的是一个对象 modelName::model() -> findALL() //找出的是一个对象集合的数组 如何找出我所需要的字段的数据,而不是全部字段的数据 之前我是这么做的 $criteria = new CDbCriteria; $criteria->select = 'username,id,email'; $criteria->order = 'id DESC'; $users = modelN

  • Yii2.0中的COOKIE和SESSION用法

    1.Cookie Yii2的Cookie主要是通过yii/web/Request和yii/web/Response进行操作的 ,通过/Yii::$app->response->getCookies()->add()添加Cookie,通过/Yii::$app->request->cookies读取Cookie. 1)添加一个Cookie <?php //第一种方法 $cookie = new /yii/web/Cookie(); $cookie -> name =

  • yii框架配置默认controller和action示例

    设置默认controller 在/protected/config/main.php添加配置 复制代码 代码如下: <?phpreturn array( 'name'=>'Auto','defaultController'=>'auto', 上述配置了默认的controller为AutoController.php 设置默认action 在AutoController.php中设置 复制代码 代码如下: class AutoController extends CController{ 

  • Yii框架用户登录session丢失问题解决方法

    本文实例讲述了Yii框架用户登录session丢失问题解决方法.分享给大家供大家参考,具体如下: 最近做项目,使用的是YII框架,用户的登录总是出现有时候能登录,有时候不能登录的情况.调试了很多次,开始以为是服务器配置问题,后来怎么测试都不行,还是出现有时候登录session丢失的情况,没办法,在群里面问,发帖,请教大拿,最后都没有发现什么问题. 无意间在网上看到一个人说yii session丢失的问题.终于解决了,解决方法: 初步解决方法: 打开文件 yii\framework\web\aut

  • 解析PHP的Yii框架中cookie和session功能的相关操作

    Sessions 和 请求 和 响应类似, 默认可通过为yii\web\Session 实例的session 应用组件 来访问sessions. 开启和关闭 Sessions 可使用以下代码来开启和关闭session. $session = Yii::$app->session; // 检查session是否开启 if ($session->isActive) ... // 开启session $session->open(); // 关闭session $session->clo

  • Yii框架登录流程分析

    本文详细分析了Yii框架的登录流程.分享给大家供大家参考.具体分析如下: Yii对于新手来说上手有点难度,特别是关于session,cookie和用户验证.现在我们就Yii中登录流程,来讲讲Yii开发中如何设置session,cookie和用户验证方面的一些通用知识 1. 概述 Yii是一个全栈式的MVC框架,所谓全栈式指的是Yii框架本身实现了web开发中所要用到的所有功能,比如MVC,ORM(DAO/ActiveRecord), 全球化(I18N/L10N), 缓存(caching), 基于

  • Yii框架form表单用法实例

    本文实例讲述了Yii框架form表单用法.分享给大家供大家参考.具体方法如下: 使用表单 在 Yii 中处理表单时,通常需要以下步骤: 1. 创建用于表现所要收集数据字段的模型类. 2. 创建一个控制器动作,响应表单提交. 3. 在视图脚本中创建与控制器动作相关的表单. 一.创建模型 在编写表单所需的 HTML 代码之前,我们应该先确定来自最终用户输入的数据的类型,以及这些数据应符合什么样的规则.模型类可用于记录这些信息.正如模型章节所定义的,模型是保存用户输入和验证这些输入的中心位置. 取决于

  • yii框架表单模型使用及以数组形式提交表单数据示例

    按Yii文档里的描述,Yii在处理表单的一般过程是: 创建表单对应的模型类,设置字段验证规则创建表单提交对应的action,处理提交的内容在视图中创建表单form在刚刚的一个小项目里,想使用ajax提交表单信息并验证保存,又不想用隐藏iframe来做无刷新提交,并且action中能够用到模型类的校验方法,就想到使用表单数组提交的方式,举个例子: form代码: 复制代码 代码如下: <form action='' method='post' name='form_test'>    <i

  • yii框架通过控制台命令创建定时任务示例

    假设Yii项目路径为 /home/apps/ 1. 创建文件 /home/apps/protected/commands/crons.php 复制代码 代码如下: <?php $yii = '/home/apps/framework/yii.php'; require_once($yii); $configFile = dirname(__FILE__).'/../config/console.php'; Yii::createConsoleApplication($configFile)->

  • Yii框架关联查询with用法分析

    本文实例分析了Yii框架关联查询with用法.分享给大家供大家参考.具体方法如下: Yii框架关联查询与mysql中的关联查询会有什么区别呢?这里小编就与各位来一起来看看吧. Yii的关联查询确实是一个方便的东西,网上的资料也很多,但是大部分都是Ctrl+c,Ctrl+v,有些东西一直没有人出来详细的写篇文章说明一下,在参考了网上很多资源以后,加上自己的的一些理解,写下了这篇文章,给广大初学者朋友们提供一点个人见解. YII 支持四种类型的关系: BELONGS_TO(属于): 如果表 A 和

  • yii框架builder、update、delete使用方法

    Yii自带的query builder还是很好用的,省去了拼sql的过程,今天在写一个语句的时候遇到这样一个问题 复制代码 代码如下: $connection = Yii::app()->db;$command = $connection->createCommand();$operate_rst = 0;if(!empty($_POST['lid'])){    $operate_rst = $command->update('emg_landing', $landing_info,

随机推荐