2013-04-29 3 views
9

Я такой объект, как это:перебор объекта StdClass в PHP

stdClass Object 
(
    [_count] => 10 
    [_start] => 0 
    [_total] => 37 
    [values] => Array 
     (
      [0] => stdClass Object 
       (
        [_key] => 50180 
        [group] => stdClass Object 
         (
          [id] => 50180 
          [name] => CriticalChain 
         ) 

       ) 

      [1] => stdClass Object 
       (
        [_key] => 2357895 
        [group] => stdClass Object 
         (
          [id] => 2357895 
          [name] => Data Modeling 
         ) 

       ) 

      [2] => stdClass Object 
       (
        [_key] => 1992105 
        [group] => stdClass Object 
         (
          [id] => 1992105 
          [name] => SQL Server Users in Israel 
         ) 

       ) 

      [3] => stdClass Object 
       (
        [_key] => 37988 
        [group] => stdClass Object 
         (
          [id] => 37988 
          [name] => CDO/CIO/CTO Leadership Council 
         ) 

       ) 

      [4] => stdClass Object 
       (
        [_key] => 4024801 
        [group] => stdClass Object 
         (
          [id] => 4024801 
          [name] => BiT-HR, BI & IT Placement Agency 
         ) 

       ) 

      [5] => stdClass Object 
       (
        [_key] => 37845 
        [group] => stdClass Object 
         (
          [id] => 37845 
          [name] => Israel Technology Group 
         ) 

       ) 

      [6] => stdClass Object 
       (
        [_key] => 51464 
        [group] => stdClass Object 
         (
          [id] => 51464 
          [name] => Israel DBA's 
         ) 

       ) 

      [7] => stdClass Object 
       (
        [_key] => 66097 
        [group] => stdClass Object 
         (
          [id] => 66097 
          [name] => SQLDBA 
         ) 

       ) 

      [8] => stdClass Object 
       (
        [_key] => 4462353 
        [group] => stdClass Object 
         (
          [id] => 4462353 
          [name] => Israel High-Tech Group 
         ) 

       ) 

      [9] => stdClass Object 
       (
        [_key] => 4203807 
        [group] => stdClass Object 
         (
          [id] => 4203807 
          [name] => Microsoft Team Foundation Server 
         ) 

       ) 

     ) 

) 

Мне нужен получить идентификатор и имя в HTML-таблице, но мне кажется, с трудом итерации через этот объект. ТИА. Я понимаю, что мне нужно добраться до массива значений, а затем к объекту группы, но я прохожу через переходы между объектом и массивом и foreach vs index на основе итерации.

Например, я попытался это:

foreach ($res as $values) { print "\n"; print_r ($values); } 

Он перебирает корыта объект, но он также дает мне бесполезный

10 0 37 
+1

Покажут, что вы пытались и объяснить, как вашу попытку не соответствовать вашим ожиданиям? –

+0

уверен. Например, я попробовал это: foreach ($ res as $ values) { print "\ n"; print_r (значения $); } он итерации через объект, но он также дает мне бесполезно 10 0 37 – Mordechai

+3

'foreach ($ object-> values ​​as $ arr) ....' – adeneo

ответ

16
echo "<table>" 

foreach ($object->values as $arr) { 
    foreach ($arr as $obj) { 
     $id = $obj->group->id; 
     $name = $obj->group->name; 

     $html = "<tr>"; 
     $html .= "<td>Name : $name</td>"; 
     $html .= "<td>Id : $id</td>"; 
     $html .= "</tr>"; 
    } 
} 

echo "</table>"; 
+0

почти. вот что работали: эхо "
Доступные группы

"; foreach ($ res-> values ​​as $ arr) { $ id = $ arr-> group-> id; $ name = $ arr-> group-> name; $ html = ""; $ html. = ""; $ html. = ""; $ html. = ""; \t \t echo $ html; } echo "
Название группы Group ID
". $ Name. "". $ Id. "
"; – Mordechai

+1

Там вы идете, я просто догадывался о структуре стола, но если вы его работаете, это важная часть. – adeneo

1
foreach($res->values as $value) { 
    print_r($value); 
} 
2
function objectToArray($data) 
{ 
    if (is_object($data)) 
     $d = get_object_vars($data); 
} 

преобразовать объект в массив сначала нравится:

$results = objectToArray($results); 

и использовать

foreach($results as result){... ...} 
Смежные вопросы