2017-02-08 47 views
1

如何从数组中获取值?我被困在这里。任何人都知道,请帮助我。我只获取主数组的值。如何使用下面的Array从foreach循环获取数据?

[0] => stdClass Object 
      (
       [id] => 68427249 
       [active] => 1 
       [name] => Three Way 
       [status] => open 
       [market_type_id] => 3896 
       [market_type_name] => Three Way 
       [market_type_order_number] => 1000 
       [event_id] => 8669447 
       [event_name] => Nuovo Campobasso Calcio vs Jesina Calcio 
       [line] => 
       [scope] => full_event 
       [order_number] => 0 
       [selections] => Array 
        (
         [0] => stdClass Object 
          (
           [id] => 558087597 
           [name] => Nuovo Campobasso Calcio 
           [status] => ok 
           [odd] => 2.32 
           [lay_odd] => 1.0 
           [order_number] => 0 
           [line] => 
           [market_subtype_id] => 293985 
           [market_subtype_code] => 11 
           [market_subtype_name] => Home 
           [market_subtype_order_number] => 0 
          ) 

         [1] => stdClass Object 
          (
           [id] => 558087568 
           [name] => Draw 
           [status] => ok 
           [odd] => 3.13 
           [lay_odd] => 1.0 
           [order_number] => 1 
           [line] => 
           [market_subtype_id] => 293986 
           [market_subtype_code] => 10 
           [market_subtype_name] => Draw 
           [market_subtype_order_number] => 1 
          ) 

         [2] => stdClass Object 
          (
           [id] => 558087589 
           [name] => Jesina Calcio 
           [status] => ok 
           [odd] => 2.57 
           [lay_odd] => 1.0 
           [order_number] => 2 
           [line] => 
           [market_subtype_id] => 293987 
           [market_subtype_code] => 12 
           [market_subtype_name] => Away 
           [market_subtype_order_number] => 2 
          ) 

        ) 

      ) 

我的代码

foreach($m as $ms) 
    { 

    echo '<tr><td>'.$ps->id.'</td><td>'.$ms->event_name.'</td><td>'.$ms['selections']->odd.'</td></tr>'; 
    } 

我的代码无法正常工作时得到[选择]值。请帮助我获得价值。

回答

0

您可以访问对象数组值是这样的:

foreach ($objArr as $obj) { 
    echo '<tr><td>'.$obj->id.'</td><td>'.$obj->event_name.'</td>'; 
    foreach ($obj->selections as $objS) { 
     echo '<td>'.$objS->odd.'</td>'; 
    } 
    echo '</tr>'; 
} 
+0

感谢克里希纳,循环的好方法 – user7441072

1

它会像这样来访问选择的数据作为其数组。所以,你需要运行循环选择来获得它的价值。

foreach ($array as $obj) { 
    echo $obj->name; 
    echo $obj->status; 
    if (is_array($obj->selections)) { 
      foreach ($obj->selections as $selection) { 
       echo $selection->name; 
       echo $selection->odd; 
      } 
    } 
} 

我希望它能帮助你。

+0

谢谢你帮我 – user7441072

0
<?php 

$user = (Object)["name" => "Meraj","email"=> "[email protected]", "education" => (Object)[ 
"school" => "JMI", "college" => "GGSIPU"]]; 
function printer($nested_object) 
{ 
    foreach ($nested_object as $property => $value) { 
     if (is_object($value)) { 
      printer($value); 
     } else { 
      echo $property."=".$value."\n"; 
     } 
    } 
} 
printer($user); 

而不是回声你可以按照你的要求做;

//output 
name=Meraj 
[email protected] 
school=JMI 
college=GGSIPU 
+0

感谢帮助我 – user7441072