2016-12-08 7 views
2

Ich habe ein Array namens $grouped_types. Wenn ich es gedruckt zeigt es wie folgt aus:mehrdimensionale Array-Abruffehler

Array 
(
[XMU_1_1] => Array 
    (
     [0] => Array 
      (
       [port] => 1 
       [band] => 
       [name] => XMU_1_1 
      ) 

     [1] => Array 
      (
       [port] => 2 
       [band] => 
       [name] => XMU_1_1 
      ) 

     [2] => Array 
      (
       [port] => 3 
       [band] => 
       [name] => XMU_1_1 
      ) 

     [3] => Array 
      (
       [port] => 4 
       [band] => 
       [name] => XMU_1_1 
      ) 

     [4] => Array 
      (
       [port] => 5 
       [band] => 
       [name] => XMU_1_1 
      ) 

     [5] => Array 
      (
       [port] => 6 
       [band] => 
       [name] => XMU_1_1 
      ) 

     [6] => Array 
      (
       [port] => 7 
       [band] => 
       [name] => XMU_1_1 
      ) 

     [7] => Array 
      (
       [port] => 8 
       [band] => 
       [name] => XMU_1_1 
      ) 

     [8] => Array 
      (
       [port] => 9 
       [band] => 
       [name] => XMU_1_1 
      ) 

     [9] => Array 
      (
       [port] => 10 
       [band] => 
       [name] => XMU_1_1 
      ) 

     [10] => Array 
      (
       [port] => 11 
       [band] => 
       [name] => XMU_1_1 
      ) 

     [11] => Array 
      (
       [port] => 12 
       [band] => 
       [name] => XMU_1_1 
      ) 

     [12] => Array 
      (
       [port] => 13 
       [band] => 
       [name] => XMU_1_1 
      ) 

     [13] => Array 
      (
       [port] => 14 
       [band] => 700 
       [name] => XMU_1_1 
      ) 

     [14] => Array 
      (
       [port] => 15 
       [band] => 
       [name] => XMU_1_1 
      ) 

     [15] => Array 
      (
       [port] => 16 
       [band] => 
       [name] => XMU_1_1 
      ) 
    ) 

[DUS_1_1] => Array 
    (
     [0] => Array 
      (
       [port] => A 
       [band] => 
       [name] => DUS_1_1 
      ) 

     [1] => Array 
      (
       [port] => B 
       [band] => 
       [name] => DUS_1_1 
      ) 

     [2] => Array 
      (
       [port] => C 
       [band] => 
       [name] => DUS_1_1 
      ) 

     [3] => Array 
      (
       [port] => D 
       [band] => 
       [name] => DUS_1_1 
      ) 

     [4] => Array 
      (
       [port] => E 
       [band] => 
       [name] => DUS_1_1 
      ) 

     [5] => Array 
      (
       [port] => F 
       [band] => 
       [name] => DUS_1_1 
      ) 
    ) 

[DUS_1_2] => Array 
    (
     [0] => Array 
      (
       [port] => A 
       [band] => 
       [name] => DUS_1_2 
      ) 

     [1] => Array 
      (
       [port] => B 
       [band] => 
       [name] => DUS_1_2 
      ) 

     [2] => Array 
      (
       [port] => C 
       [band] => 
       [name] => DUS_1_2 
      ) 

     [3] => Array 
      (
       [port] => D 
       [band] => 
       [name] => DUS_1_2 
      ) 

     [4] => Array 
      (
       [port] => E 
       [band] => 
       [name] => DUS_1_2 
      ) 

     [5] => Array 
      (
       [port] => F 
       [band] => 
       [name] => DUS_1_2 
      ) 
    ) 
) 

Jetzt möchte ich dieses Array wie folgt in einer Tabelle anzuzeigen:

XMU_1_1 port XMU_1_1 band 

1    
2 
3 
4 
5 
6 
7 
8 
9 
10 
11 
12 
13 
14     700 
15 
16 

Dies ist nur ein Name, den ich es für jeden anderen Namen wollen. Jeder Name sollte eine andere Tabelle haben. Wie hole ich mein Array, damit ich es für verschiedene Tabellen anzeigen kann? Ich habe es versucht, aber ich weiß nicht, wie ich diese Art von Array holen soll.

+4

_“i versucht aber "_ - bitte zeig was du probiert hast! – Jeff

Antwort

1

Der einfachste Weg, durch ein Array-Zyklus ist mit dem foreach() loop.With ein mehrdimensionales Array, würden Sie einen ein oder zwei verschachtelte foreach() haben müssen Schleifen, wie im Code-Ausschnitt gezeigt. Ich sage nicht, dass das genau der Code ist, der für Sie arbeiten wird; es ist einfach zu veranschaulichen, was foreach verschachtelt() in einer Schleife like.Hope aussehen würde es kann Ihnen helfen, Ihr Problem zu lösen

LIVE DEMO

<?php 

echo "<table>"; 
foreach ($grouped_types as $k => $val) { 
    echo "<tr> 
      <th>$k port </th> 
      <th>$k band </th> 
      </tr>"; 
    if (is_array($val)) { 
     foreach ($val as $v) { 
      echo "<tr> 
        <td>" . $v['port'] . "</td> 
        <td>" . $v['band'] . "</td> 
        </tr>"; 
     } 
    } 

} 
echo "</table>"; 

?> 

Ausgang:

enter image description here

0

Basierend auf Ihrem Array wird dies wie unter Verwendung einer foreach() Schleife durchgeführt.

$array = [ 

"XMU_1_1" =>[ 

      [ 

      "port" => 1, 
      "band" => null, 
      "name" => "XMU_1_1", 

      ], 
      [ 

      "port" => 2, 
      "band" => null, 
      "name" => "XMU_1_1", 

      ], 
      [ 

      "port" => 3, 
      "band" => null, 
      "name" => "XMU_1_1", 

      ], 
      [ 

      "port" => 4, 
      "band" => 700, 
      "name" => "XMU_1_1", 

      ],  
    ] 
]; 


echo "<table>"; 
echo "<tr><th>XMU_1_1 port</th><th>XMU_1_1 band</th></tr>"; 

foreach($array['XMU_1_1'] as $v) { 

    echo "<tr><td>" . $v['port'] . "</td><td>" . $v['band'] . "</td></tr>"; 

} 

echo "</table>"; 

Ausgabe

XMU_1_1 port XMU_1_1 band 
1 
2 
3 
4 700