2017-02-08 3 views
1

Как получить значения из массива? Я застрял в этом. Кто-нибудь знает, пожалуйста, помогите мне. Я получаю только значения основного массива.Как получить данные из цикла 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

Смежные вопросы