用户
 找回密码
 入住 CI 中国社区
搜索
查看: 1233|回复: 3
收起左侧

PHP里session的key里边有!号的话session会失效

[复制链接]
发表于 2016-3-22 14:16:10 | 显示全部楼层 |阅读模式
今天遇到一个奇怪的现象,有两个页面
第一个页面中的代码,
PHP复制代码
 
<?php
session_start();
$_SESSION['d!']=1;
$_SESSION['c']=1;
var_dump($_SESSION);
exit();
?>
 
复制代码

第二个页面中的代码
PHP复制代码
 
<?php
session_start();
var_dump($_SESSION);
exit();
?>
 
复制代码

很简单,就是在第一个页面里定义一个session变量,然后通过post请求另一个页面打印一下。然后发现,如果key里边存在!的话,session数组就为空了,这是为什么。
发表于 2016-3-22 14:31:10 | 显示全部楼层
那就是说不支持感叹号呗。。。。
 楼主| 发表于 2016-3-22 14:42:41 | 显示全部楼层
Hex 发表于 2016-3-22 14:31
那就是说不支持感叹号呗。。。。

为什么不支持,array是支持的,但是用在session里就不支持了不会吧?只是想了解一下原因。并且手册并没有这种特殊性的说明啊。
发表于 2016-3-22 15:24:53 | 显示全部楼层
什么什么 发表于 2016-3-22 14:42
为什么不支持,array是支持的,但是用在session里就不支持了不会吧?只是想了解一下原因。并且手册并没有 ...

你这个是 PHP 原生的东西,跟 CI 无关,你可以看看 PHP 手册。

本版积分规则