为数组添加+1号

时间:2017-06-11 17:52:31

标签: php

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。他们没有加起来。我该如何解决这个问题?

1 个答案:

答案 0 :(得分:1)

在您的情况下给定数组$arr$_SESSION['list'],可以append an element到数组的末尾,如下所示。

$arr[] = 'new element';

您尝试将其与+= operator结合使用。这将首先将0附加到数组然后递增它,从而导致1一直被追加。

看起来你真正想做的是:

$arr[] = end($arr) + 1;

即,获取数组的last值,向其添加1并将其附加到数组。