HTML 保证表单字段在提交时编码时的顺序,这意味着以下表单:
<form method="GET">
<input name="Foo[]" value="one">
<input name="Foo[]" value="two">
<input name="Foo[]" value="three">
</form>
将始终编码到此查询字符串中:
?Foo[]=one&Foo[]=two&Foo[]=three
但这是我的问题。当 PHP 将这些值拉入$_GET['Foo']
时,PHP 是否保证数组的顺序?这意味着,给定该查询字符串,Foo
的值将始终相等:
array('one', 'two', 'three'); //?
来自 PHP
手册关于 PHP 和 HTML 的常见问题解答:
要使
<form>
结果作为数组发送到PHP脚本,您可以像这样命名<input>
,<select>
或<textarea>
元素:
<input name="MyArray[]" />
<input name="MyArray[]" />
<input name="MyArray[]" />
<input name="MyArray[]" />
以粗体显示答案:
在 HTML 中指定数组键是可选的。如果未指定键,则数组将按元素在表单中出现的顺序填充。我们的第一个示例将包含键 0、1、2 和 3。