2016-04-06 79 views
-1

我无法找到对此问题适用于我的答复。我需要通过input字段将值添加到array。我尝试了SESSION,但它也没有奏效。当用print_r检查数组时,每次再次使用index [0]重新开始,因此覆盖以前的用户输入,因此不会在结尾添加新值。但是,增加新的值到数组标准的方式,通过宣布新的价值完美的作品:通过输入表格将值添加到数组

$a = array(); 
$a[] = 5; 
$a[] = 'Hello'; 

你能不能给我一些暗示?

在此先感谢 丹尼

+0

像[数组合并](http://php.net/manual/en/function.array-merge.php)? – Chay22

+0

或'array_push' ..? [链接](http://php.net/manual/en/function.array-push.php) – Stuart

+0

或按数组键名$ a ['k_name'] =“value”? –

回答

0

在这里你去。首先开始一个会话。然后创建数组(如果不存在于会话数组中)。添加inputName命名字段的值。第二个是检查,该值是否已经在数组中,如果是,则不要再次添加。

稍后,您可以在任何页面上访问$_SESSION['myArray']

不要忘记在你使用它的地方每个页面开始会话session_start();

<?php 
session_start(); 
//If session array not exists create one 
if (empty($_SESSION['myArray'])) { 
    $_SESSION['myArray'] = array(); 
} 
if (!empty($_GET['inputName'])) { 
    $_SESSION['myArray'][] = $_GET['inputname']; 
} 

//If want to check is the value of inputName exists, and add only once: 
if (!empty($_GET['inputName']) && !in_array($_GET['inputName'], $_SESSOION['myArray'])) { 
    $_SESSION['myArray'][] = $_GET['inputname']; 
} 
?>  
HTML starts here.