php xml파싱질문입니다. > 그누4 질문답변

그누4 질문답변

그누보드4 관련 질문은 QA 로 이전됩니다. QA 그누보드4 바로가기
기존 게시물은 열람만 가능합니다.

php xml파싱질문입니다. 정보

php xml파싱질문입니다.

본문

<?

// RSS 읽어오기
function getRSS($url){
    $fd = fopen ($url, "r");
    while (!feof ($fd)) {
        $buffer.= fgets($fd,4096);
    }
    fclose ($fd);

 $buffer = str_replace("\n","",$buffer);
    return $buffer;
}

 
$apiURL = "http://www.naver.com/include/timesquare/widget/exchange.xml";

 $content =  getRSS($apiURL);
 

 $qur = "/<currency>(.+?)<\/currency>/i";
  preg_match_all($qur , $content , $itemList );

 

 // 0번 미국
 foreach($itemList[0] as $key => $val)
 {

// 국가 정보 출력
  $qur = "/<hname>(.+?)<\/hname>/i";
  preg_match($qur, $val, $item);
  printf("key:%d %s<br/>\n",$key, $item[1]);

 

// 환율 살때 정보

  $qur = "/<buy>(.+?)<\/buy>/i";
  preg_match($qur, $val, $item);
  printf("key:%d %s<br/>\n",$key, $item[1]);

 }

 

?>


요런코드를만들어서 ftp업로드 한후 해당파일을 열어보니 오류가뜨는데 이유를모르겠습니다.
도와주세욥~!
  • 복사

댓글 전체

실제 소스를 확인해보니 전 잘됩니다.

php설정이 allow_url_fopen = On 인지 의문이 드네요..

phpinfo(); 먼저 확인해보시는것이 낳겠네요.

추가로 해당파일이 xml이니까 fopen으로 불러오는 것보단

php5라면 DOMXPath 로 작업하는걸 추천드립니다. 수고하세요.
fopen 함수를 막아두면 오류가 뜨지요.

대부분의 서버 호스팅에서는 보안을 위해 막아두더군요.

"Snoopy.class.php"를 이용하시면 아주 쉽고 재미있는 기능이 많습니다.

검색하시면 금방 찾을 수 있을 겁니다.

include "Snoopy.class.php";

$url = "http://www.naver.com/include/timesquare/widget/exchange.xml";

$snoopy = new Snoopy;
$snoopy->fetch($url);

echo $snoopy->results;

소스는 대충 이렇고요.
© SIRSOFT
현재 페이지 제일 처음으로