欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

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

程序员文章站 2022-04-21 13:48:04
...
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数组,做相应的数据处理..
这个代码性质和你差不多,主要用于后台的批量处理数据

因?表示是一???。