php ci框架 $this->session->set_userdata 为啥取不到值 session已经默认开启了

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了php ci框架 $this->session->set_userdata 为啥取不到值 session已经默认开启了相关的知识,希望对你有一定的参考价值。

看看你的变量名写的对不对,直接把session这个值全部打印出来,看看有没有你要的值追问

打印出来了 一直是第一个值 没有改变过 不知道为什么

追答

不知道你出的是什么值,另外你确定你把这个值放进去了吗?

追问

对 放进去了 可是为什么好像没有更新 只是显示第一个值

参考技术A $this->session->set_userdata //设置 session

使用是 $this->session->userdata

例如
login.php
$customer = array(
'uesername' => 'test'
);
$this->session->set_userdata($customer);

index.php
$uesername= $this->session->userdata("uesername");

php优秀框架codeigniter学习系列——CI_Input类学习

这篇文章主要介绍CI核心框架工具类CI_Input。
根据CI文档自己的定义,该类用来:

  • 提前处理全局变量,以保证安全;
  • 提供一些帮助函数用来处理输入数据。

以下选取类中的重点方法进行说明。

__construct()


在构造函数,根据定义,用来决定是否开启全局的XSS处理和是否允许$_GET数组。
调用函数$this->_sanitize_globals();来清理,$_GET,$_POST,$COOKIE,$_SERVER[\'PHP_SELF\']中的数据。主要用来检测键名和键值是否存在非法字符,以防止XSS攻击。
同时会调取安全类CI_Security来进行CRSF的防御。

		// CSRF Protection check
		if ($this->_enable_csrf === TRUE && ! is_cli())
		{
			$this->security->csrf_verify();
		}

读取输入变量


主要的方法有:

  • $this->input->post()
  • $this->input->get()
  • $this->input->cookie()
  • $this->input->server()

同时你也可以利用php://input或者$this->input->raw_input_stream;来获取原始的数据。

其它工具函数


例如:

  • is_cli_request()
  • is_ajax_request()
  • get_request_header()

等等。

以上是关于php ci框架 $this->session->set_userdata 为啥取不到值 session已经默认开启了的主要内容,如果未能解决你的问题,请参考以下文章

php ci框架中载入css和js文件失败的原因及解决方法

CI框架

PHP CI框架中的表单验证规则

PHP CI框架中的表单验证规则

php ci框架中载入css和js文件失败的原因及解决方法

PHP CI 框架 ,MySQL 数据查询 问题