session_start();
echo "<form method='post'>";
echo "<input type='text' name='random' placeholder='Product' >";
echo "<input type='submit' value='submit' name='submit'>";
echo "</form>";
if(!$_SESSION['list']) {
$_SESSION['list'] = array(); // create session
}
if(isset($_POST['submit']) && empty($_POST['random'])) { // Check if input is empty
echo "* Input is empty!";
} elseif(isset($_POST['submit']) && isset($_POST['random'])) {
$_SESSION['list'][] += 1; // add +1 to array
}
foreach ($_SESSION['list'] as $value) {
echo $value . "<br>"; // shows the list/array
}
所以我尝试在提交时添加+1号的数组,但是我的数组保持为1,所以它不会像:1,2,3,4,5 ......但是它会像: 1,1,1,1,1,1。他们没有加起来。我该如何解决这个问题?
答案 0 :(得分:1)
在您的情况下给定数组$arr
或$_SESSION['list']
,可以append an element到数组的末尾,如下所示。
$arr[] = 'new element';
您尝试将其与+=
operator结合使用。这将首先将0
附加到数组然后递增它,从而导致1
一直被追加。
看起来你真正想做的是:
$arr[] = end($arr) + 1;
即,获取数组的last值,向其添加1
并将其附加到数组。