[PHP] 공공데이타포탈 XML 자료 파싱하기


[PHP] 공공데이타포탈 XML 자료 파싱하기




최초 작성일 : 2022-10-13 | 수정일 : 2023-05-08 | 조회수 : 673

외부 xml 주소를 읽어서 php 상으로 파싱하는 방법을 알아보자.

코로나 관련 외부로 공개중인 xml 소식지를 이용해 보았다. 
[공공 데이터 포탈 https://www.data.go.kr] 참고해 보기 바란다.

[ 실제 xml 페이지 화면 ]

body 안에 items 안에 item 들이 기사 내용으로 주욱 살펴볼 수 있다.

 ###google_banner###

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
$ch = curl_init();
$url = 'http://apis.data.go.kr/1262000/SafetyNewsList/getCountrySafetyNewsList'
$queryParams = '?' . urlencode('ServiceKey') . '시디키값'
$queryParams .= '&' . urlencode('numOfRows') . '=' . urlencode('10'); 
$queryParams .= '&' . urlencode('pageNo') . '=' . urlencode('1'); 
 
/*
$queryParams .= '&' . urlencode('title1') . '=' . urlencode('입국'); 
$queryParams .= '&' . urlencode('title2') . '=' . urlencode('코로나'); 
$queryParams .= '&' . urlencode('title3') . '=' . urlencode('운항'); 
$queryParams .= '&' . urlencode('title4') . '=' . urlencode('항공권'); 
$queryParams .= '&' . urlencode('title5') . '=' . urlencode('격리'); 
*/
 
curl_setopt($ch, CURLOPT_URL, $url . $queryParams);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($ch, CURLOPT_HEADER, FALSE);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, 'GET');
$response = curl_exec($ch);
curl_close($ch);
 
$xml = simplexml_load_string($response);
 
//echo $xml->body->items->item[0]->content;
 
 
    for ($i=0;$i$xml->body->items->item);$i++) {
        $title = $xml->body->items->item[$i]->title;
        $content = $xml->body->items->item[$i]->content;
        $content = nl2br($content);
?>
<ul>
    <li><strong>=$title?>strong>li>
    <li>=$content?>li>
ul>
    }
?>
cs

여기서는 curl 을 이용하여 GET 방식으로 처리했다.

simplexml_load_string 를 이용하면 간단히 처리할 수 있다.

아주 직관적이라 이해하기 어렵진 않을것 같다.

Tags  #XML파싱  #공공데이타포탈  

닉네임:
댓글내용:
🚀 추천글
새글

애플컴퓨터 신제품, 2025년 출시될 최신 정보 총정리!
2025-08-23
  • 애플컴퓨터
  • 애플 신제품
  • 2025년 출시
애플컴퓨터 신제품, 2025년 기대작 총정리!
2025-08-22
  • 애플컴퓨터
  • 2025년 신제품
  • 맥북 프로
애플컴퓨터 신제품, 2025년 최신 소식 총정리!
2025-08-21
  • 애플컴퓨터
  • 2025년 신제품
  • 아이폰 17
애플컴퓨터 최신 소식: M4 칩 성능 폭발! 🚀
2025-08-20
  • M4 칩
  • 애플 M4
  • 애플 신제품
애플컴퓨터 최신 M5 칩 성능 '깜짝'!
2025-08-20
  • 애플 M5 칩
  • M5 칩 성능
  • 애플 실리콘
추천글
카슈미르, 전쟁의 불씨: 국제적 긴장의 중심에서의 갈등 분석
2025-08-20
  • 카슈미르분쟁
  • 인도파키스탄
  • 카르길전쟁




📸 이미지 프롬프트 복사 완료!
이제 어떤 이미지 생성 도구로 이동하시겠어요?
🧠 ImageFX 🧪 Whisk