PHP를 이용하여 xml로 된 기상청 데이터를 받아서 뿌려보자
<?php
function objectsIntoArray($arrObjData, $arrSkipIndices = array())
{
$arrData = array();
// if input is object, convert into array
if (is_object($arrObjData)) {
$arrObjData = get_object_vars($arrObjData);
}
if (is_array($arrObjData)) {
foreach ($arrObjData as $index => $value) {
if (is_object($value) || is_array($value)) {
$value = objectsIntoArray($value, $arrSkipIndices); // recursive call
}
if (in_array($index, $arrSkipIndices)) {
continue;
}
$arrData[$index] = $value;
}
}
return $arrData;
}
$xmlUrl_W = "http://www.kma.go.kr/wid/queryDFS.jsp?gridx=56&gridy=92"; // 서해
$xmlStr_W = file_get_contents($xmlUrl_W); // 서해
$xmlObj_W = simplexml_load_string($xmlStr_W); // 서해
$arrXml_W = objectsIntoArray($xmlObj_W); // 서해
$tomorrow=11-($arrXml_W[body][data][0][hour]/3); //다음날 오전 9시기준
$wArray=Array("","맑음","구름조금","구름많음","흐림","비","눈/비","눈");
// 서해 현재날씨 알아보기
for($i=1;$i<(count($wArray)+1);$i++){
if($wArray[$i]==$arrXml_W[body][data][0][wfKor]){
$wNum_W=$i; // 서해 현재날씨
}
}
// 서해 내일날씨 알아보기
for($i=1;$i<(count($wArray)+1);$i++){
if($wArray[$i]==$arrXml_W[body][data][8][wfKor]){
$wNum_W2=$i; // 서해 내일날씨
}
}
?>
<!--서해-->
<div id="Wweather">
<div class="day">
<!--오늘-->
<div class="W">
<div class="w_icon"><img src="images/w<?=$wNum_W?>.gif"></div>
<div class="per"><?=$arrXml_W[body][data][0][wfKor]?></div>
</div>
<div class="W">
<div class="tempA"><?=$arrXml_W[body][data][0][temp]?>℃</div>
<div class="tempB"><font style="font-size:12px;">강수확률</font>:</div>
<div class="tempC"><?=$arrXml_W[body][data][0][pop]?>%</div>
</div>
</div>
<div class="day">
<!--내일-->
<div class="W">
<div class="w_icon"><img src="images/w<?=$wNum_W2?>.gif"></div>
<div class="per"><?=$arrXml_W[body][data][$tomorrow][wfKor]?></div>
</div>
<div class="W">
<div class="tempA"><?=$arrXml_W[body][data][$tomorrow][temp]?>℃</div>
<div class="tempB"><font style="font-size:12px;">강수확률</font>:</div>
<div class="tempC"><?=$arrXml_W[body][data][$tomorrow][pop]?>%</div>
</div>
</div>
</div>
이런식으로 가공해서 사용하면 된다.
'PHP' 카테고리의 다른 글
php에서 자바스크립트로 배열 보내기 (0) | 2013.05.03 |
---|---|
date() 사용시 Warning이 뜬다면. (0) | 2013.05.02 |
php 메일 utf-8로 보내기 (0) | 2013.04.30 |
php 현재 생성되어있는 변수 확인 (0) | 2013.04.30 |
[그누보드] 그룹관리자 및 게시판관리자 여러명 지정하기 (0) | 2013.04.17 |