【发布时间】:2013-05-06 22:58:27
【问题描述】:
如果我有一个数组:
$resultArr = pg_fetch_array($result,NULL);
并在我的 php 代码顶部声明:
$_SESSION['resultArr'] = $resultArr;
为什么我不能像这样访问数组元素:
for($i = 0; $i < $NUM_COLUMNS; $i++){
// creation of the table and row are handled elsewhere.
// The table is also within a <form> if that matters
echo "<td>" .$_SESSION['resultArr'][$i]."</td>";
}
我的表最终有空列,我不知道为什么...
编辑:我想通了。我在代码顶部(就在 session_start() 之后)声明了$_SESSION['resultArr'] = $resultArr;,但它没有被设置。我把它移到了$resultArr = pg_fetch_array($result,NULL);之后的点
这是它应该如何工作还是应该在代码顶部正常工作?
【问题讨论】:
-
您是否正确初始化了会话?
var_dump($_SESSION['resultArr']);输出什么? -
$NUM_COLUMNS设置为什么?另外,您还记得开始会话吗? -
没有理由这不应该工作。请通过
var_dump($_SESSION['resultArr'])了解里面的内容。 -
我认为
$NUM_COLUMNS是你的问题 -
嗯,你刚刚回答了你自己的问题。
$_SESSION['resultsArr']为空。
标签: php html arrays session html-table