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

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已经去除了这个选项。

时间: 2025-01-20 23:47:13

php cookie中点号(句号)自动转为下划线问题_php技巧的相关文章

win8.1专业版IE浏览器去除超链接下划线的具体技巧

  win8.1专业版IE浏览器去除超链接下划线的具体技巧由win8系统天地分享给大家! 现在Win8专业版系统中一般都有自带IE10浏览器,IE10浏览器的功能上也有很大的改进,但是有些用户则希望能够将IE浏览器显示的链接下划线取消掉,虽然可以通过清除缓存来解决,但是每次要清除太麻烦了,其实只要简单设置一下就可以了,下面就跟大家分享一下具体的设置步骤吧. 具体解决技巧如下: 第一步.进入win8系统后,您需要在win8电脑的metro菜单中直接双击进入到IE浏览器程序之中,如果大家发现win8

php中cookie实现二级域名可访问操作的方法_php技巧

本文实例讲述了php中cookie实现二级域名可访问操作的方法.分享给大家供大家参考.具体方法如下: cookie在一些应用中很常用,假设我有一个多级域名要求可以同时访问主域名绑定的cookie,下面就来给大家具体介绍在php中利用setcookie实现二级域名可以成功访问主域名cookie值的方法. 有时候两个域名可能在不同的服务器上,但是我们依然希望二级域名能够顺利访问主域名的cookie,主域名可以顺利访问二级域名的cookie,比如sc.jb51.net 希望能访问 www.jb51.n

WPS文字2012填空下划线设置小技巧

  在编辑合同.协议.考卷.介绍信一类文档时,往往需要在文本中留出一定的空格并设置下划线以便将来填写.但是当这些空格同时出现在上一行末和下一行开头时,不管你如何按空格行末的空格也不会进入下一行开头.有时还会造成文字间距被拉开或压缩(图1).通常我们只能在上一行的空格后回车才能在下一行开头重新输入空格.但这样在设置字号重新排版时无法自动调整空格位置,就会变得很乱.在此提供两种WPS文字中的解决方法. 1.允许西文中间换行 对于用空格加下划线制作的填空区,在WPS文字2012中有一个很简单的方法可以

js正则表达式匹配数字字母下划线等_javascript技巧

1.一个正则表达式,只含有汉字.数字.字母.下划线不能以下划线开头和结尾: ^(?!_)(?!.*?_$)[a-zA-Z0-9_\u4e00-\u9fa5]+$ 其中: ^ 与字符串开始的地方匹配 (?!_) 不能以_开头 (?!.*?_$) 不能以_结尾 [a-zA-Z0-9_\u4e00-\u9fa5]+ 至少一个汉字.数字.字母.下划线 $ 与字符串结束的地方匹配 放在程序里前面加@,否则需要\\进行转义 @"^(?!_)(?!.*?_$)[a-zA-Z0-9_\u4e00-\u9fa5]

php基于str_pad实现卡号不足位数自动补0的方法_php技巧

自动补足空白位数在php中str_pad函数可以帮我们实现哦,str_pad() 函数把字符串填充为指定的长度. str_pad() 函数把字符串填充为指定的长度. 语法 str_pad(string,length,pad_string,pad_type) 参数 描述 string 必需.规定要填充的字符串. length 必需.规定新字符串的长度.如果该值小于原始字符串的长度,则不进行任何操作. pad_string 可选.规定供填充使用的字符串.默认是空白. pad_type 可选.规定填充

php自动加载方式集合_php技巧

php加载文件方式: 1.include,include_once,requice,requice_one常规加载 2.__autoload() 3.spl_autoload_register() 常规加载方式 假设我们有一个类文件A.php,里面定义了一个名字为A的类: <?php class A { public function __construct() { echo 'Got it.'; } } 然后我们有一个index.php需要用到这个类A,常规的写法就是 <?php requi

php各种编码集详解和以及在什么情况下进行使用_php技巧

字符集是多个字符的集合,字符集种类较多,每个字符集包含的字符个数不同,常见字符集名称:ASCII字符集.GB2312字符集.BIG5字符集. GB 18030字符集.Unicode字符集等.计算机要准确的处理各种字符集文字,需要进行字符编码,以便计算机能够识别和存储各种文字. 中文文字数目大,而且还分为简体中文和繁体中文两种不同书写规则的文字,而计算机最初是按英语单字节字符设计的,因此,对中文字符进行编码,是中文信息交流的技术基础.本文将按照字符集的时间顺序讨论几种典型的字符集,选取几种代表性的

PHP实现全角字符转为半角方法汇总_php技巧

最简单的方法 <?php $str = "0123ABCDFWS\",.?<>{}[]*&^%#@!-()+-|::"; echo "$str"; echo "<br />"; $str = preg_replace('/\xa3([\xa1-\xfe])/e', 'chr(ord(\1)-0x80)', $str); echo $str; 这是网上看来的代码,所有的中文标点的第二个字节减去0X80(即128

php实现根据url自动生成缩略图的方法_php技巧

本文实例讲述了php实现根据url自动生成缩略图的方法,是非常实用的功能.分享给大家供大家参考.具体方法如下: 原理:设置apache rewrite ,当图片不存在时,调用php创建图片. 例如: 原图路径为:http://localhost/upload/news/2013/07/21/1.jpg 缩略图路径为:http://localhost/supload/news/2013/07/21/1.jpg 当访问 http://localhost/supload/news/2013/07/21