php cookie中点号(句号)自动转为下划线问题


Posted in PHP onOctober 21, 2014

php cookie中不能使用点号(句号),实际上不是很严格,应该说可以使用点号的cookie名,但会被转换,你命名一个cookie:

$_COOKIE[‘my.name'] = 1; 

实际上你不能通过'my.name'在cookie中查找到这个值,只能是'my_name':

echo $_COOKIE[‘my_name']; 

php已经自动帮你进行了转化,句点转为了下划线。

php为什么要这样做呢?这是因为$_GET/$_POST/$_SERVER/$_COOKIE。。。这些全局函数的值,在之前的许多版本中是可以通过register_globals参数在本地中直接访问这些值的,比如开启register_globals = on后,访问$my_name直接取值为1。如果是$my.name的话,则不符合php变量命名原则,这不单是句号(.)的问题。

因此,$_COOKIE的命名已经符合php命名标准。

另外开启register_globals是一个很糟糕的决定,因为它可能会覆盖脚本中原来的值,比如:

// other code
if ($a)
    $uc_is_login = true;
// ... 

用户只需要发送一个url?a=1的http请求就可以默认已经登陆。这是个很危险的做法,应该把它关闭。实际上php6已经去除了这个选项。

PHP 相关文章推荐
PHP5中MVC结构学习
Oct 09 PHP
PHP中的cookie
Nov 26 PHP
php无限极分类实现的两种解决方法
Apr 28 PHP
ThinkPHP结合ajax、Mysql实现的客户端通信功能代码示例
Jun 23 PHP
PHP网页游戏学习之Xnova(ogame)源码解读(九)
Jun 24 PHP
PHP获取一个字符串中间一部分字符的方法
Aug 19 PHP
PHP使用array_fill定义多维数组的方法
Mar 18 PHP
Zend Framework教程之Zend_Controller_Plugin插件用法详解
Mar 07 PHP
php微信开发之图片回复功能
Jun 14 PHP
PHP删除数组中指定值的元素常用方法实例分析【4种方法】
Aug 21 PHP
php设计模式之策略模式应用案例详解
Jun 17 PHP
php模式设计之观察者模式应用实例分析
Sep 25 PHP
微信公众平台网页授权获取用户基本信息中授权回调域名设置的变动
Oct 21 #PHP
php时间戳格式化显示友好的时间函数分享
Oct 21 #PHP
ThinkPHP整合百度Ueditor图文教程
Oct 21 #PHP
浅谈PHP正则表达式中修饰符/i, /is, /s, /isU
Oct 21 #PHP
php读取目录及子目录下所有文件名的方法
Oct 20 #PHP
php中的字符编码转换函数用法示例
Oct 20 #PHP
PHP实现通过中文字符比率来判断垃圾评论的方法
Oct 20 #PHP
You might like
用PHP实现 上一篇、下一篇的代码
2012/09/29 PHP
php实现用手机关闭计算机(电脑)的方法
2015/04/22 PHP
php中array_slice和array_splice函数解析
2016/10/18 PHP
Javascript Object.extend
2010/05/18 Javascript
Javascript实现DIV滚动自动滚动到底部的代码
2012/03/01 Javascript
使用javascript实现简单的选项卡切换
2015/01/09 Javascript
javascript实现计时器的简单方法
2016/02/21 Javascript
BootStrap 轮播插件(carousel)支持左右手势滑动的方法(三种)
2016/07/07 Javascript
微信jssdk用法汇总
2016/07/16 Javascript
JS实现超简单的汉字转拼音功能示例
2016/12/22 Javascript
Angular2使用jQuery的方法教程
2017/05/28 jQuery
原生JS实现多个小球碰撞反弹效果示例
2018/01/31 Javascript
react-native-video实现视频全屏播放的方法
2018/03/19 Javascript
Vue实现点击当前元素以外的地方隐藏当前元素(实现思路)
2019/12/04 Javascript
京东优选小程序的实现代码示例
2020/02/25 Javascript
js实现点击选项置顶动画效果
2020/08/25 Javascript
Python跨文件全局变量的实现方法示例
2017/12/10 Python
python pandas库中DataFrame对行和列的操作实例讲解
2018/06/09 Python
Empty test suite.(PyCharm程序运行错误的解决方法)
2018/11/30 Python
解决Python内层for循环如何break出外层的循环的问题
2019/06/24 Python
python2和python3实现在图片上加汉字的方法
2019/08/22 Python
Numpy 理解ndarray对象的示例代码
2020/04/03 Python
Python3.7安装pyaudio教程解析
2020/07/24 Python
简述 Python 的类和对象
2020/08/21 Python
Avène雅漾美国官方网站:敏感肌肤护理专家
2016/10/24 全球购物
美国畅销的跑步机品牌:ProForm
2017/02/06 全球购物
ToysRus日本官网:玩具反斗城
2018/09/08 全球购物
介绍一下Java的事务处理
2012/12/07 面试题
化学相关工作求职信
2013/10/02 职场文书
基层党组织公开承诺书
2014/03/28 职场文书
学生会感恩节活动方案
2014/10/11 职场文书
2014年政风行风工作总结
2014/11/22 职场文书
2015年留守儿童工作总结
2015/05/22 职场文书
建党伟业观后感
2015/06/01 职场文书
千手观音观后感
2015/06/03 职场文书
Python基础之hashlib模块详解
2021/05/06 Python