首页  >  文章  >  后端开发  >  为啥能这样写接收表单值呢

为啥能这样写接收表单值呢

WBOY
WBOY原创
2016-06-23 13:37:501026浏览

post方式表单中有这样的数组:

看到别人写接值的时候用
POST['test']
那么问题来了,我的理解post中只能放变量,
比如
写成POST['test']
而第一种写法让人摸不着头脑,数组怎么能放进去呢,就算post能接数组,也不应该光秃秃的写一个test哈,还应该加一个[]即写成POST['test[]'],他这么写test,是个啥玩意呢,指代不明哈!而写成test[ ]才能表示是一个数组,况且test[ ]的形式也不能写成test来代替哈
还有点意思,这是怎么回事呢


回复讨论(解决方案)


对应 $_POST['test']


对应 $_POST['test']['abc']

这就没有问题了吧?

同名表单元素被解释为数组,是所有 web 语言都这样做的
唯有 php 加了一点约束


打印$_POST['test']出来是个数组 
array('bac'=>..........)

有点感觉了,但是还有一个纠结的问题是,即然是数组,为啥要写成test 呢,假如要是提前声明了,比如$test=array( );这样的形式还能理解,但此例没有这么干哈

你可以理解为浏览器和服务器之间的约定
毕竟网络数据包传输都是用字符串的
然后服务器按照一定规则,解析字符串成内存中的数组即可

print_r($_POST); 不就都清楚了

是人家写得非传统,js数组直接post到php,也还是一个数组

 作者会这样写,应该还有类似的代码
,后台的时候得到test数组,做相应的数据处理..
这个代码性质和你差不多,主要用于后台的批量处理数据

因?表示是一???。

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn