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 に答える