2016-06-30 3 views
0
I have following array : 
Array 
(
[0] => stdClass Object 
(
    [sbu_name] => DISTRIBUTION CONSULTING 
    [2016-06-26 TO 2016-07-2] => 
    [2016-06-5 TO 2016-06-11] => 
    [2016-06-19 TO 2016-06-25] => 57 
) 

[1] => stdClass Object 
    (
     [sbu_name] => PMC 
     [2016-06-26 TO 2016-07-2] => 467.25 
     [2016-06-5 TO 2016-06-11] => 10 
     [2016-06-19 TO 2016-06-25] => 
    ) 

[2] => stdClass Object 
    (
     [sbu_name] => VAI 
     [2016-06-26 TO 2016-07-2] => 
     [2016-06-5 TO 2016-06-11] => 
     [2016-06-19 TO 2016-06-25] => 
    ) 
) 

habe die Schlüssel in Anbetracht dieses Arrays drucken i dies unten Code haben erreichenPHP Array-Schlüssel-Werte wiederholenden Fehler

foreach ($collection as $key => $val) { 
    foreach ($val as $key2 => $newVal) { ?> 
     <th><?php echo $key2; ?></th> 
    <?php 
    } 
} 

aber Ausgabe zeigt wie diese sich wiederholende . Ich will nicht, dass: enter image description here

+1

was ist die Frage? – billyonecan

+0

Welche Werte möchten Sie also anzeigen? Zur Zeit macht das Skript genau das, was ich daraus lesen kann. –

+0

Was möchten Sie anzeigen? – Avishake

Antwort

0

Sie drucken die mehrere Male Header (einmal pro Folge), sollten Sie nur das einmal tun:

<table><thead><tr> 
<?php 
if (is_array($collection) && count($collection) > 0) { 
    $val = current($collection); 
    foreach ((array)$val as $key2 => $newVal) { ?> 
     <th><?php echo $key2; ?></th> 
    <?php 
    } 
}?> 
</tr></thead> 
<tbody> 
<?php 
foreach ($collection as $key => $val) { ?> 
    <tr> 
    <?php 
    foreach ($val as $key2 => $newVal) { ?> 
     <td><?php echo $newVal; ?></th> 
    <?php } ?> 
    </tr> 
    <?php 
} ?> 
</tbody> 
</table> 
+0

Hi danke für die Antwort jetzt ist das Problem, dass meine Header einmal aber meine anzeigen Abschnitt zeigt auch nur einmal, und ich will seine zeigt alle Werte können Sie mir helfen –

+0

Es gibt keine Erwähnung des 'tbody' in der Frage, noch stellen Sie den Code, der es generiert. Ich gehe nur nach dem, was ich sehe. – apokryfos

+0

Ja, jetzt bin ich fest in Abschnitt Ich kann nicht herausfinden, welchen Code ich in diesem Abschnitt, um alle Werte zu zeigen, –

0

Sie drucken alle als Tabellenkopf th Tags. Dies führt zu der Ausgabe, die Sie in Ihrem Bild anzeigen. Alle Schlüssel werden aber zusammen in einer einzigen Zeile sein.

Sie sollten eine tr mit mehreren td für jedes Array-Element.

foreach ($collection as $key => $val) { 
    echo "<tr>"; 
    foreach ((array)$val as $key2 => $newVal) { 
     echo sprintf("<td>%s</td>", $key2); 
    } 
    echo "</tr>"; 
} 
Verwandte Themen