2017-01-22 3 views
0

Mein Problem ist, ich weiß nicht, wie diese Daten in einer Tabelle in PHP angezeigt werden. Wenn ich versuche, nur eine Variable $obj->message; zu übergeben, bekomme ich trying to get non object. Kann mir jemand sagen, wie ich alles in einer HTML-Tabelle anzeigen soll?JSON Daten API in PHP-Ansicht

Mein Code:

<?php 
$url = "http://api.vateud.net/notams/EPDE.json"; 
$ch = curl_init(); 
curl_setopt($ch,CURLOPT_URL,$url); 
curl_setopt($ch,CURLOPT_RETURNTRANSFER,1); 
curl_setopt($ch,CURLOPT_CONNECTTIMEOUT, 4); 
$json = curl_exec($ch); 
if(!$json) { 
    echo curl_error($ch); 
} 
curl_close($ch); 
$obj= json_decode($json); 
print_r($obj); 
?> 

und Ergebnis:

Array 
(
    [0] => stdClass Object 
     (
      [raw] => B0552/17 NOTAMR B0372/17 
Q) EPWW/QPIAU/I /NBO/A /000/999/5133N02154E005 
A) EPDE B) 1701201151 C) 1701301430 
E) INSTRUMENT APPROACH PROCEDURES: 
- ILS OR LOC RWY30 (CAT A/B/C/D/E) NOT AVBL. 

      [message] => INSTRUMENT APPROACH PROCEDURES: 
- ILS OR LOC RWY30 (CAT A/B/C/D/E) NOT AVBL. 

      [icao] => EPDE 
     ) 

    [1] => stdClass Object 
     (
      [raw] => B0551/17 NOTAMR B0371/17 
Q) EPWW/QICAS/I /NBO/A /000/999/5133N02154E005 
A) EPDE B) 1701201151 C) 1701301430 
E) ILS AND DME IDN CH28X U/S. 

      [message] => ILS AND DME IDN CH28X U/S. 

      [icao] => EPDE 
     ) 

    [2] => stdClass Object 
     (
      [raw] => B0546/17 NOTAMR B7851/16 
Q) EPWW/QSAAS/IV/BO /A /000/999/5133N02154E005 
A) EPDE B) 1701200946 C) 1702222100 
E) ATIS ON TEST. DO NOT USE. 

      [message] => ATIS ON TEST. DO NOT USE. 

      [icao] => EPDE 
     ) 

    [3] => stdClass Object 
     (
      [raw] => B7983/16 NOTAMN 
Q) EPWW/QMNLT/IV/NBO/A /000/999/5133N02154E005 
A) EPDE B) 1612230741 C) 1703230700 
E) APN A - NOT AVBL WEST PART OF APRON, 
DIMENSIONS: LENGHT 362M, WIDTH 77M. 

      [message] => APN A - NOT AVBL WEST PART OF APRON, 
DIMENSIONS: LENGHT 362M, WIDTH 77M. 

      [icao] => EPDE 
     ) 

    [4] => stdClass Object 
     (
      [raw] => B7982/16 NOTAMR B6578/16 
Q) EPWW/QFALT/IV/NBO/A /000/999/5133N02154E005 
A) EPDE B) 1612230739 C) 1703230700 
E) AERODROME AVBL FOR AKADEMICKI OSRODEK SZKOLENIA LOTNICZEGO AND 
AEROKLUB ORLAT: 
FRI 2100- MON 0430, 
MON-FRI 2100-0430. 

      [message] => AERODROME AVBL FOR AKADEMICKI OSRODEK SZKOLENIA LOTNICZEGO AND 
AEROKLUB ORLAT: 
FRI 2100- MON 0430, 
MON-FRI 2100-0430. 

      [icao] => EPDE 
     ) 

    [5] => stdClass Object 
     (
      [raw] => B6826/16 NOTAMR B4965/16 
Q) EPWW/QMXLC/IV/M /A /000/999/5133N02154E005 
A) EPDE B) 1611160841 C) 1702152100 
E) TWY A NEAR APRON A CLSD. 

      [message] => TWY A NEAR APRON A CLSD. 

      [icao] => EPDE 
     ) 

    [6] => stdClass Object 
     (
      [raw] => B6631/16 NOTAMR B6606/16 
Q) EPWW/QFMLT/IV/BO /A /000/999/5133N02154E005 
A) EPDE B) 1611070909 C) 1701310430 
E) 1.MIL MET OFFICE HOURS OF SERVICES: 
- MON 0430 - FRI 2100. 
- THE WORKING DAYS BEFORE HOLIDAYS TILL 2100. 
- THE WORKING DAYS AFTER HOLIDAYS FROM 0430. 
- SAT, SUN AND NOV 11, DEC 26, JAN 01, JAN 06 CLOSED. 
2. MET INFORMATION ON HOLIDAYS AVBL PPR 24HR. 
3. MET MEASUREMENT AND OBSERVATIONS ARE PERFORMED EVERY DAY 
    FROM 0230 TILL 2100 EVERY 30 MINUTES. SOME OTHER TIME AVAILABLE 
    METAR AUTO ONLY. 

      [message] => 1.MIL MET OFFICE HOURS OF SERVICES: 
- MON 0430 - FRI 2100. 
- THE WORKING DAYS BEFORE HOLIDAYS TILL 2100. 
- THE WORKING DAYS AFTER HOLIDAYS FROM 0430. 
- SAT, SUN AND NOV 11, DEC 26, JAN 01, JAN 06 CLOSED. 
2. MET INFORMATION ON HOLIDAYS AVBL PPR 24HR. 
3. MET MEASUREMENT AND OBSERVATIONS ARE PERFORMED EVERY DAY 
    FROM 0230 TILL 2100 EVERY 30 MINUTES. SOME OTHER TIME AVAILABLE 
    METAR AUTO ONLY. 

      [icao] => EPDE 
     ) 

    [7] => stdClass Object 
     (
      [raw] => B6595/16 NOTAMR B5280/16 
Q) EPWW/QFULT/IV/NBO/A /000/999/5133N02154E005 
A) EPDE B) 1611040838 C)0 
E) RESTRICTIONS FOR ACFT NOT BASED ON AERODROME: 
FUEL AVBL PPR 72HR ONLY . 

      [message] => RESTRICTIONS FOR ACFT NOT BASED ON AERODROME: 
FUEL AVBL PPR 72HR ONLY . 

      [icao] => EPDE 
     ) 

) 

Antwort

0

jemand mir sagen, wie das alles in HTML-Tabelle angezeigt werden?

Angesichts der Tatsache, dass Sie dekodiert Array sind immer die Lösung mit $obj= json_decode($json);, würde die folgende Tabellenstruktur und die nachfolgenden verschachtelten foreach Schleifen wie folgt zu verwenden sein:

echo '<table>'; 
    echo '<tr>'; 
     echo '<th>raw</th>'; 
     echo '<th>message</th>'; 
     echo '<th>icao</th>'; 
    echo '</tr>'; 

    foreach($obj as $o){ 
     echo '<tr>'; 
     foreach($o as $value){ 
      echo '<td>' . $value . '</td>'; 
     } 
     echo '</tr>'; 
    } 
echo '</table>'; 
+0

und mir sagen, wie um es als ein Körper zum Beispiel anzuzeigen: roh, Nachricht, ICAO und unter dieser zweiten rohen, Nachricht, ICAO – tomczas

+0

@tomczas Können Sie bitte erarbeiten, was ist Ihre * erwartete * Ausgabe? –

+0

so zum Beispiel ICAO als Titel darunter Nachricht und darunter rohe – tomczas