【发布时间】:2013-04-02 17:09:55
【问题描述】:
我需要在一个 php 文件中创建一个数组,并在每次通过 ajax 调用该 php 文件时为其添加值(例如 $array[] = something)
我尝试过使用全局和会话,但不起作用我的文件中有这样的内容:
$_GET['index'] 每次从 javascript (ajax) 代码调用 php 时都会更改。
if(isset($_GET['value']) && isset($_GET['next']) && isset($_GET['actl']) && isset($_GET['index'])){
$_SESSION['filters'][$_GET['index']]['id_feature'] = $_GET['actl'];
$_SESSION['filters'][$_GET['index']]['value'] = $_GET['value'];
print_r($_SESSION['filters']);
}
问题在于重置其值并始终显示添加到数组中的最后一个值。
请原谅我的英语
【问题讨论】:
-
你打电话给
session_start()了吗? -
不,我没有,我应该在哪里做,在文件的开头?如果在其他文件中使用该函数会有问题吗?我的意思是,它会重置会话变量?
-
在开始使用与会话有关的任何内容之前调用它。在文件的开头通常是一个好地方。多次调用
session_start应该没问题,但如果你设计的脚本很好,你就不应该遇到这个问题。 -
有没有办法在不使用会话的情况下做到这一点?
-
isset 需要多个参数,所以你可以这样做
isset($_GET['value'],$_GET['next'],$_GET['actl'],$_GET['index'])
标签: php ajax arrays multidimensional-array