使用变量y我尝试增加for循环运行的次数,因此应该有更多值被推入数组。然而,这不会发生。为什么他不会发生?我感觉当按下按钮时,页面会刷新,我的$ y变量再次为0。这是对的吗?
我希望你能帮助我。
<html>
<head>
<?php
$stack = array();
if( isset($_POST['dobbelTrig'])){
$y=0;
$y++;
for($x = 0; $x < $y; $x++){
$newvalue = mt_rand(1,6);
$stack[] = $newvalue;
}
print_r($stack);
}
?>
</head>
<body>
<p>
<form method="post" action="">
<input type="submit" value="dobbelen" name="dobbelTrig">
</form>
</p>
</body>
</html>
答案 0 :(得分:2)
首先,您将$y
设置为1
$y=0; $y++;
然后在0
和$y
:
for($x = 0; $x < $y; $x++){
因此0小于1,因此您向数组添加一个值。
然后1不小于1,所以你停止。
此时,数组中有一个值。
再次单击“提交”时,程序将从头开始运行。它创建一个新数组并在其中放入一个值。
如果要在表单提交之间保留数据,则需要将结果存储在持久性的某个位置(例如在会话,数据库中或嵌入在表单中的隐藏输入元素中)。
答案 1 :(得分:1)
看这里:
$y=0; // Y is 0
$y++; // Y is now 1
for($x = 0; $x < $y; $x++){ //So X is zero, when $x++ it is no longer < $y