5

我有一个输出如下的数组:

1 => 
array
  'quantity' => string '2' (length=1)
  'total' => string '187.90' (length=6)

2 => 
array
  'quantity' => string '2' (length=1)
  'total' => string '2,349.90' (length=8)

我想遍历每个数组键并检索与它们相关的 3 个值的集合,就像这样(这不起作用):

foreach( $orderItems as $obj=>$quantity=>$total)
{
    echo $obj;
    echo $quantity;
    echo $total;
}

有人可以就我将如何完成此任务提供一些建议,甚至可以为我提供更好的方式来完成这项任务。任何与此相关的信息,包括可能涵盖此内容的教程链接,将不胜感激。谢谢!!

4

2 回答 2

5
foreach( $orderItems as $key => $obj)
{
    echo $key;
    echo $obj['quantity'];
    echo $obj['total'];
}

使用上述。

于 2012-07-30T12:15:25.780 回答
2

您需要多阅读一些文档forEach(),因为您的语法和对它的理解有些不正确。

$arr = array(
    array('foo' => 'bar', 'foo2', 'bar2'),
    array('foo' => 'bar', 'foo2', 'bar2'),
);
foreach($arr as $sub_array) {
    echo $sub_array['foo'];
    echo $sub_array['bar'];
}

forEach()迭代地将数组的每个键传递给一个变量 - 在上述情况下,$sub_array(一个合适的名称,因为您的数组包含子数组)。所以在循环体内,你需要询问。

于 2012-07-30T12:14:39.100 回答