定义多维数组

时间:2015-10-11 04:15:43

标签: php loops multidimensional-array

我的多维数组存在问题。

我正在为一个需要“预订”电影院门票的项目建立这个超级基本预订系统。

我添加了一个表单,将结果发布到$_SESSION中的数组,我的数据很好。然而构建一个显示该数组内容的“cart”部分对我来说并不顺利,我一直遇到未定义的数组错误

array(1) {
 ["tickets"]=>
  array(14) {
    [0]=>
    array(20) {
      ["movie"]=>
      string(2) "AF"
      ["day"]=>
      string(8) "Thursday"
      ["time"]=>
      string(3) "3pm"
      ["SA"]=>
      string(1) "0"
      ["TSA"]=>
      string(1) "0"
      ["SP"]=>
      string(1) "0"
      ["TSP"]=>
      string(1) "0"
      ["SC"]=>
      string(1) "0"
      ["TSC"]=>
      string(1) "0"
      ["FA"]=>
      string(2) "10"
      ["TFA"]=>
      string(6) "300.00"
      ["FC"]=>
      string(1) "0"
      ["TFC"]=>
      string(1) "0"
      ["B1"]=>
      string(1) "0"
      ["TB1"]=>
      string(1) "0"
      ["B2"]=>
      string(1) "0"
      ["TB2"]=>
      string(1) "0"
      ["B3"]=>
      string(1) "0"
      ["TB3"]=>
      string(1) "0"
      ["price"]=>
      string(6) "300.00"
    }
    [1]=>
    array(20) {
      ["movie"]=>
      string(2) "AC"
      ["day"]=>
      string(6) "Monday"
      ["time"]=>
      string(3) "9pm"
      ["SA"]=>
      string(1) "0"
      ["TSA"]=>
      string(1) "0"
      ["SP"]=>
      string(1) "0"
      ["TSP"]=>
      string(1) "0"
      ["SC"]=>
      string(1) "0"
      ["TSC"]=>
      string(1) "0"
      ["FA"]=>
      string(1) "0"
      ["TFA"]=>
      string(1) "0"
      ["FC"]=>
      string(1) "5"
      ["TFC"]=>
      string(6) "100.00"
      ["B1"]=>
      string(1) "0"
      ["TB1"]=>
      string(1) "0"
      ["B2"]=>
      string(1) "0"
      ["TB2"]=>
      string(1) "0"
      ["B3"]=>
      string(1) "0"
      ["TB3"]=>
      string(1) "0"
      ["price"]=>
      string(6) "100.00"
    }
}

这是我的循环:

$cart = $_SESSION["tickets"];

$tab = "\t"; // tab
$return = "\r"; // return

foreach ($cart as $key => $a) {
    echo '<div class="col-xs-12 col-sm-4 custom-col">';

    foreach ($a as $value) {

        if (!$value == 0) {
            echo '<div class="col-xs-6 teaser-title">';
            echo $tab.$value.$return;
            echo '</div>';
        };

    }
    echo '</div>';
}

我希望能够通过代码列出故障单类型(所有两个字母变量),并显示它们的小计或数量(如果有的话)。

我可以很好地获得价值,但不是标签。

1 个答案:

答案 0 :(得分:1)

如果你想要标签,你可以将它们变成内部foreach声明中的变量......

foreach ($cart as $key => $a) {
    echo '<div class="col-xs-12 col-sm-4 custom-col">';

    foreach ($a as $index => $value) {

        if (!$value == 0) {
            echo '<div class="col-xs-6 teaser-title">';
            echo $index.$tab.$value.$return;
            echo '</div>';
        };

    }
    echo '</div>';
}