在PHP中将print_r发送到数组并回显数组值

时间:2014-02-06 13:14:04

标签: php arrays printing foreach echo

我有一个存储在数组中的长对象。我正在尝试显示此数组的特定值。

问题如下:


foreach($reportVal["OrderEventDetail"] AS $OrderEventDetailK => $OrderEventDetailV){
  print_r($reportVal["OrderEventDetail"]);
}

输出:

Array ( 
       [eventId] => 18345
       [orderId] => 781 
      )


Array ( 
      [eventId] => 18345 
      [orderId] => 781 
       ) 

此时一切正常,但是:


foreach($reportVal["OrderEventDetail"] AS $OrderEventDetailK => $OrderEventDetailV){
  $OrderEventDetailV["orderId"];
}

输出:

1 7

为什么会这样?如果im printing [“orderId”],则值为781 781。

预期结果:

<span class="label label-success" style="background-color: #5cb85c;">Orden <?= $OrderEventDetailV["orderId"] ?></span>

有价值:

<span class="label label-success" style="background-color: #5cb85c;">Orden 781</span>

4 个答案:

答案 0 :(得分:2)

您需要回复$reportVal["OrderEventDetail"]["orderId"];

答案 1 :(得分:2)

你不想做一个

print_r($OrderEventDetailV["orderId"]);

在你的循环中?

答案 2 :(得分:1)

试用此代码

echo "<pre>";
foreach($reportVal["OrderEventDetail"] AS $OrderEventDetailK => $OrderEventDetailV)
{
  print_r($OrderEventDetailV["orderId"]);
}

答案 3 :(得分:0)

试试这个

Array ( 
       [eventId] => "18345"
       [orderId] => "781" 
      )


Array ( 
      [eventId] => "18345"
      [orderId] => "781" 
       ) 

foreach($reportVal["OrderEventDetail"] AS $OrderEventDetailK => $OrderEventDetailV){
  $OrderEventDetailV["orderId"];
}