2013-08-02 166 views
0

我有以下代码:无法访问多维关联数组

foreach ($cardSuits as $cardSuit) { 
    $keyCardValues = array_keys($cardValues); 
    foreach ($keyCardValues as $cardValue) { 
     $deck[] = array("cardValue" => $cardValue, "cardSuit" => $cardSuit); 
     shuffle($deck); 
    } 
} 

if ($deal == "Deal") { 
shuffle($deck); 
$cards1 = array_shift($deck); 
$_SESSION['value'][] = $cards1; 

我已经试过:

echo "<br />" . $_SESSION['value']['cardValue']; 

但它给我一个未定义的索引错误。但是,如果我做一个print_r,它工作正常.. 我如何回显它,所以会话可以给我$ cardValue数组中?

感谢

编辑为print_r的:

Array ([value] => Array ([0] => Array ([cardValue] => nine [cardSuit] => hearts)) [cards] => Array ([0] => 9 [1] => 2 [2] => 10 [3] => 4 [4] => 3 [5] => 10 [6] => 5 [7] => 2 [8] => 10 [9] => 5)) 

编辑回声的print_r:

Array ([value] => Array ([0] => Array ([cardValue] => nine [cardSuit] => diamonds)) [cards] => Array ([0] => 9 [1] => 3 [2] => 7 [3] => 10 [4] => 9 [5] => 11 [6] => 7 [7] => 10 [8] => 10 [9] => 5)) 
+0

内你可以发布'echo print_r($ _ SESSION)的结果;' –

+0

$ _SESSION ['value']是数组。使用foreach –

+0

添加print_r谢谢 – StevenWin

回答

0

因为y我们$cards1是一个数组,你要分配这个数组$_SESSION['value'][],你要使用下面的访问cardValue

echo "<br />" . $_SESSION['value'][0]['cardValue']; 
+0

太棒了!谢谢 – StevenWin

+0

@ yay4programming,不客气。 – vee

1

尝试

echo "<br />" . $_SESSION['value'][0]['cardValue'];

+1

最早的完整答案。 @ yay4programming,你错过了[0] – smcjones

+1

非常感谢! – StevenWin

0

使用此

echo "<br />" . $_SESSION['value'][0]['cardValue']; 

阵列值是索引0