現在PHPでNHKから地震情報を取得し、表示するプログラムを作っています。
そこで、http://www3.nhk.or.jp/sokuho/jishin/data/JishinReport.xmlから地震情報を取得したのですが、各地の震度を表示させたいのですが、[]の中を各地の震度の要素名であるRelativeを入れても(下のソースのように)表示されません。
まだ初心者でよくPHPが理解できません。
どなたか各地の震度も表示する方法を教えてほしいです。
HTML
1震源地は<?= $earthquake["Relative"] ?> 2↑したのPHPのソースの一部です。
PHP
1<?php 2 $imageBaseURL = "http://www3.nhk.or.jp/sokuho/jishin/";//画像 3 $rawReportXML = mb_convert_encoding(file_get_contents("http://www3.nhk.or.jp/sokuho/jishin/data/JishinReport.xml"), "UTF-8", "SJIS"); //情報 4 5 $dump = explode("\n", $rawReportXML, 2); 6 $rawReportXML = '<?xml version="1.0" encoding="UTF-8" ?>' . $dump[1]; 7 $xmlData = new SimpleXMLElement($rawReportXML); 8 9 $latestItemURL = $xmlData->record[0]->item[0]["url"]; 10 $rawLatestEarthquake = mb_convert_encoding(file_get_contents($latestItemURL), "UTF-8", "SJIS");//UTF8へ 11 12 $dump = explode("\n", $rawLatestEarthquake, 2); 13 $rawLatestEarthquake = '<?xml version="1.0" encoding="UTF-8" ?>' . $dump[1]; 14 $earthquakeXMLData = new SimpleXMLElement($rawLatestEarthquake); 15 16 $earthquake = $earthquakeXMLData->Earthquake; 17//ここまで 18?> 19<!DOCTYPE html> 20<html lang="ja"> 21 <head> 22 <meta charset="UTF-8"> 23 <meta name="viewport" content="width=device-width, initial-scale=1;"> 24 <title>地震情報</title> 25 <link rel="stylesheet" href="css/style.css"> 26 <script src="js/openclose.js"></script> 27 <script src="js/fixmenu.js"></script> 28 <script src="js/fixmenu_pagetop.js"></script> 29 <script src="js/ddmenu_min.js"></script> 30 </head> 31 <body> 32 <h1>【地震情報】</h1> 33 <h2><?= $earthquake["Time"] ?>頃、最大震度<?= $earthquake["Intensity"] ?>の地震がありました。</h1> 34 <h2> 35 震源地は<?= $earthquake["Epicenter"] ?>、 36 震源の深さは<?= $earthquake["Depth"] ?>、 37 地震の規模を表すマグニチュード は<?= $earthquake["Magnitude"] ?>と推定されます。<br> 38 </h2> 39 <h2>震度マップ(全体)</h2> 40 <img src="<?= $imageBaseURL . $earthquake->Detail ?>" /> 41 </body> 42</html>
あなたの回答
tips
プレビュー