PHP表单递交控件名称含有点号(.)会被转化为下划线(_)的处理方法


Posted in PHP onJanuary 06, 2013

最近在做公司项目的时候,发现一个奇怪的问题,递交一个正常表单,竟然发现不能正常获取到递交的值,这一发现,不免让我开始的时候一头雾水,开始的时候一度认为是我的服务有问题,不能正常的写入数据库,后来侦测SQL语句发现,原来问题竟然出现在获取数据上,获取到的数据竟然都是空的,后来一调试发现,原来递交到后端的所有变量,都已经不是预期中的变量,竟然被PHP转化了。

提供测试代码如下:

<html> 
<head> 
<title>测试表单提交</title> 
</head> 
<body> 
<form action="" method="post"> 
名字:<input type="text" value="test" name="info.name" /><br/> 
密码: <input type="text" value="hahaha" name="info.pwd" /><br/> 
QQ: <input type="text" value="961412" name=".info.qq" /><br/> 
住址: <input type="text" value="zhejiang" name="info|address" /><br/> 
电话: <input type="text" value="123456789" name="1——phone" /><br/> 
性别: <input type="radio" name="info_gender" value="1" checked>男 <input type="radio" name="info_gender" value="2">女<br/> 
<button type="submit" name="submit" value=""> commit</button> 
</form> 
</body> 
</html> 
<?php 
if ($_POST) { 
echo '<pre/>'; 
var_export($_POST); 
} 
?>

代码实例1
运行之后结果如下:
PHP表单递交控件名称含有点号(.)会被转化为下划线(_)的处理方法
图1

可以看到,所有我在控件中含有的.号,都被后端转化成了_下划线,为了测试其他的一些符号,所以做了如上的测试,至今为止,仅发现点号(.)会被转化为下划线(_),所以导致在后端我想当然的用info.name去访问的时候,不能发现,因为它其实已经被转化成了info_name。

PHP 相关文章推荐
php正则
Jul 07 PHP
PHP通用检测函数集合
Nov 25 PHP
PHP通用分页类page.php[仿google分页]
Aug 31 PHP
PHP 面向对象实现代码
Nov 11 PHP
PHP新手用的Insert和Update语句构造类
Mar 31 PHP
PHP文件生成的图片无法使用CDN缓存的解决方法
Jun 20 PHP
详解PHP中instanceof关键字及instanceof关键字有什么作用
Nov 05 PHP
PHP微信开发之文本自动回复
Jun 23 PHP
thinkphp5使用无限极分类
Feb 18 PHP
Yii2框架配置文件(Application属性)与调试技巧实例分析
May 27 PHP
TP5(thinkPHP5)框架使用ajax实现与后台数据交互的方法小结
Feb 10 PHP
Yii 框架使用Forms操作详解
May 18 PHP
Fine Uploader文件上传组件应用介绍
Jan 06 #PHP
PDO版本问题 Invalid parameter number: no parameters were bound
Jan 06 #PHP
PHPEXCEL 使用小记
Jan 06 #PHP
关于mysql字符集设置了character_set_client=binary 在gbk情况下会出现表描述是乱码的情况
Jan 06 #PHP
Could not load type System.ServiceModel.Activation.HttpModule解决办法
Dec 29 #PHP
PHP数组无限分级数据的层级化处理代码
Dec 29 #PHP
php学习笔记之面向对象编程
Dec 29 #PHP
You might like
PHP 数组教程 定义数组
2009/10/23 PHP
PHP按行读取、处理较大CSV文件的代码实例
2014/04/09 PHP
PHP常用正则表达式集锦
2014/08/17 PHP
PHP也能干大事之PHP中的编码解码详解
2015/04/20 PHP
PHP5.6读写excel表格文件操作示例
2019/02/26 PHP
javascript实现的动态添加表单元素input,button等(appendChild)
2007/11/24 Javascript
解决jquery1.9不支持browser对象的问题
2013/11/13 Javascript
一个js导致的jquery失效问题的解决方法
2013/11/27 Javascript
Bootstrap滚动监听(Scrollspy)插件详解
2016/04/26 Javascript
JavaScript实现使用Canvas绘制图形的基本教程
2016/10/27 Javascript
Angular如何引入第三方库的方法详解
2017/07/13 Javascript
Vue绑定内联样式问题
2018/10/17 Javascript
vuex2中使用mapGetters/mapActions报错的解决方法
2018/10/20 Javascript
JavaScript数据结构与算法之检索算法实例分析【顺序查找、最大最小值、自组织查询】
2019/02/22 Javascript
vue中keep-alive组件的入门使用教程
2019/06/06 Javascript
VueQuillEditor富文本上传图片(非base64)
2020/06/03 Javascript
解决VUE项目使用Element-ui 下拉组件的验证失效问题
2020/11/07 Javascript
[01:02:04]EG vs Liquid 2019国际邀请赛淘汰赛 败者组 BO3 第一场 8.23
2019/09/05 DOTA
Python中计算三角函数之cos()方法的使用简介
2015/05/15 Python
Python unittest模块用法实例分析
2018/05/25 Python
解决Pycharm下面出现No R interpreter defined的问题
2018/10/29 Python
Python编程图形库之Pillow使用方法讲解
2018/12/28 Python
Python Pywavelet 小波阈值实例
2019/01/09 Python
美国在线宠物用品商店:Entirely Pets
2017/01/01 全球购物
巴西宠物商店:Cobasi
2019/04/19 全球购物
团购业务员岗位职责
2014/03/15 职场文书
创建绿色社区汇报材料
2014/08/22 职场文书
教师节感恩老师演讲稿
2014/08/28 职场文书
城管执法人员个人对照检查材料思想汇报
2014/09/29 职场文书
2014小学数学教研组工作总结
2014/12/06 职场文书
前台文员岗位职责
2015/02/04 职场文书
教师个人培训总结
2015/02/11 职场文书
乡镇科协工作总结2015
2015/05/19 职场文书
如何用python插入独创性声明
2021/03/31 Python
python获取对象信息的实例详解
2021/07/07 Python
vue实现可以快进后退的跑马灯组件
2022/04/08 Vue.js