<form method="post">
<?php
for($i = 1; $i <= 1000; $i++)
{
for($j = 1; $j <= 100; $j++)
{
echo "<input type="text" name="text" . $j . "[]" value="" . ($i * $j) . "" />";
}
}
?>
<input type="submit" />
</form>
为什么发布 10 行时只输出 1000 行? 已经在php.ini
中设置了所有变量,例如input_max_var
,max_execution_time
,max_post_limit
等...
输出
Array
(
[text1] => Array
(
[0] => 1
[1] => 2
[2] => 3
[3] => 4
[4] => 5
[5] => 6
[6] => 7
[7] => 8
[8] => 9
[9] => 10
)
[text2] => Array
(
[0] => 2
[1] => 4
[2] => 6
[3] => 8
[4] => 10
[5] => 12
[6] => 14
[7] => 16
[8] => 18
[9] => 20
)
.
.
.
[text100] => Array
(
[0] => 100
[1] => 200
[2] => 300
[3] => 400
[4] => 500
[5] => 600
[6] => 700
[7] => 800
[8] => 900
[9] => 1000
)
)
memory_limit = -1
post_max_size = 1G
max_execution_time = -1
max_input_time = -1
max_input_vars = -1
suhosin.post.max_vars = -1
suhosin.request.max_vars = -1
因此,页面上有 100 000 个输入,但它们的名称无效 - 页面上有重复项。它应该是$i
和$j
的组合
<form method="post">
<?php
for($i = 1; $i <= 1000; $i++)
{
for($j = 1; $j <= 100; $j++)
{
echo "<input type="text" name="text" . ($j * $i) . "[]" value="" . ($i * $j) . "" />";
}
}
?>
<input type="submit" />
</form>