您好,欢迎访问一九零五行业门户网

SESSION存多维数组问题

需求是把最近访问的分类id(3个)存入到session里
然后通过循环去数据库里取对应的分类名称
我是先把得到的3个分类id拼成一个数组 存到session里 
然后再把它取出来 再压到那个数组里
现在问题是取出来的数据并不是我想要的一个二维数组 
这是我的代码:
session_start();$cate1 = $_get['cate1'];$cate2 = $_get['cate2'];$cate3 = $_get['cate3'];$data[] = array('cate1'=>$cate1,'cate2'=>$cate2,'cate3'=>$cate3);if($_session['cate']){ $data[] = $_session['cate'];}$_session['cate'] = $data;
这是第三次访问 返回的数据:
array(2) { [0]=> array(3) { [cate1]=> string(2) 35 [cate2]=> string(2) 43 [cate3]=> string(2) 12 } [1]=> array(2) { [0]=> array(3) { [cate1]=> string(2) 35 [cate2]=> string(2) 43 [cate3]=> string(2) 12 } [1]=> array(2) { [0]=> array(3) { [cate1]=> string(2) 95 [cate2]=> string(2) 64 [cate3]=> string(2) 13 } [1]=> array(2) { [0]=> array(3) { [cate1]=> string(2) 95 [cate2]=> string(2) 64 [cate3]=> string(2) 13 } [1]=> array(1) { [0]=> array(3) { [cate1]=> string(2) 55 [cate2]=> string(2) 24 [cate3]=> string(2) 43 } } } } }}
这个结果让我很伤心 如果才能得到一个正常的二维数组
回复讨论(解决方案) session_start();$cate1 = $_get['cate1'];$cate2 = $_get['cate2'];$cate3 = $_get['cate3'];$data = array('cate1'=>$cate1,'cate2'=>$cate2,'cate3'=>$cate3);if($_session['cate']){ $data = $_session['cate'];} $_session['cate'] = $data;
这样也不行啊 版主大哥 这样取到的永远只有一个一维数组
http://localhost/test?cate1=23&cate2=34&cate3=45
http://localhost/test?cate1=24&cate2=35&cate3=46
我请求了两次它返回的都是这个数据
array(3) { [cate1]=> string(2) 23 [cate2]=> string(2) 34 [cate3]=> string(2) 45}
我希望是这样的
array(3) {[0]=>{ [cate1]=> string(2) 23 [cate2]=> string(2) 34 [cate3]=> string(2) 45}[1]=>{ [cate1]=> string(2) 24 [cate2]=> string(2) 35 [cate3]=> string(2) 46}}
谢谢回复 麻烦再看下
session_start();if(! isset($_session['cate']) ) $_session['cate'] = array();$cate1 = $_get['cate1'];$cate2 = $_get['cate2'];$cate3 = $_get['cate3'];$_session['cate'][] = array('cate1'=>$cate1,'cate2'=>$cate2,'cate3'=>$cate3);
靠 原来这么简单 ……。 想太复杂了 谢谢版主
其它类似信息

推荐信息