2013-05-06 77 views
-2

​​值我有生成列使用for循環,像這樣的表:使用會話保存在PHP

echo <table> 
echo "<tr>"; 
for($i = 0; $i < $NUM_COLUMNS; $i++){ 
    echo "<td>" . $resultArr[$i] . "</td>"; 
} 
echo </tr> 

但是,當我重新載入我的網頁,在這些列中的所有值都將丟失,我想保留它們。我之前使用會話的輸入框可以指定輸入的名稱和值,但如何使用標記完成相同的操作?

+0

'echoing'會話變量不是從'echoing'在PHP公共變量如此不同。儘管會話變量本質上是數組。 – 2013-05-06 02:26:08

回答

1

您可以很簡單地將整個數組保存在會話中。

$_SESSION['resultArr'] = $resultArr; 

然後在for循環以後使用它像這樣

for($i = 0; $i < $NUM_COLUMNS; $i++) 
    echo "<td>".$_SESSION['resultArr'][$i]."</td>"; 
1

你需要做這樣的說法:

// top of PHP file 
session_set_cookie_params(3600,"/"); // (optional) hold'em for an hour in entire domain 
session_start(); 

...拷貝結果數組到session數組(一次或當你想改變它們時)

$_SESSION["resultArr"] = $resultArr; 

...然後使用總是該會話陣列代替

echo "<table><tr>"; 
for($i = 0; $i < $NUM_COLUMNS; $i++) { 
    echo "<td>".$_SESSION["resultArr"][$i]."</td>"; 
} 
echo "</tr></table>";