※ ChatGPTを利用し、要約された質問です(原文:PHP4.4.8でxmlを表示する方法)
PHP4.4.8でxmlを表示する方法
このQ&Aのポイント
PHP4.4.8を使用してxmlを表示する方法を探しています。
http://www.phppro.jp/school/mashup/vol3/2のソースコードを試した結果、天気予報の最高気温と最低気温しか表示されなかったので、解決策を教えてください。
以下のコードは、東京の明日の天気予報を表示する関数です。
PHP Version 4.4.8
Apache 2.0 Handler
上記環境でxmlをphpで参照する方法を探しているのですが
http://www.phppro.jp/school/mashup/vol3/2
のソースコードをそのまま貼って試してみたら
------------------------------
ライブドアの天気予報を表示する
最高気温度
最低気温度
------------------------------
としか表示されませんでした。どなたか解決法を教えて頂けないでしょうか。
<?php
//ライブドアの天気予報を表示する関数その2
function lwws2($city,$day){
//XMLデータ取得用ベースURL
$req = "http://weather.livedoor.com/forecast/webservice/rest/v1";
//XMLデータ取得用リクエストURL生成
$req .= "?city=".$city."&day=".$day;
//XMLファイル内容を全て文字列に読み込む
$buf = file_get_contents($req);
preg_match_all('@<title>(.*?)</title>.*?<description>(.*?)</description>.*?<image>.*?<title>(.*?)</title>.*?<url>(.*?) </url>.*?</image>.*?<temperature>.*?<max>.*?<celsius>(.*?)</celsius>.*?</max>.*?<min>.*?<celsius>(.*?)</celsius>.*?</min>.*?</temperature>@s', $buf, $match, PREG_SET_ORDER);
$ret = '<div class="lwws">';
$ret .= "<div>".$match[0][1]."</div>";
$ret .= "<div><img src=\"".$match[0][4]."\" alt=\"".$match[0][3]."\"></div>";
$ret .= "<div>".$match[0][2]."</div>";
$ret .= "<div>最高気温".$match[0][5]."度</div>";
$ret .= "<div>最低気温".$match[0][6]."度</div>";
$ret .= "</div>";
return $ret;
}
echo "<h1>ライブドアの天気予報を表示する</h1>\n";
//リクエストパラメータ設定
$city = "63"; //東京を設定
$day = "tomorrow"; //tomorrow(明日の天気)を設定
//ライブドアの天気予報を表示する関数をコールする
echo lwws2($city,$day);
?>
お礼
回答ありがとうございます! 空白を削除したら正常に動きました。