PHP 크롤러를 사용하여 XML 데이터를 가져오고 구문 분석하는 방법

王林
풀어 주다: 2023-06-13 16:32:01
원래의
1722명이 탐색했습니다.

웹 개발에서 XML 데이터를 얻고 구문 분석하는 것은 매우 일반적인 작업입니다. 이 기사에서는 PHP 크롤러를 사용하여 XML 데이터를 얻고 구문 분석하는 방법에 중점을 둘 것입니다.

1. XML 데이터 얻기

  1. cURL 라이브러리

cURL 라이브러리는 데이터를 얻기 위해 매우 일반적으로 사용되는 PHP 라이브러리입니다. 다음 코드를 사용하여 웹사이트에서 XML 데이터를 가져올 수 있습니다.

$url = 'http://example.com/example.xml'; $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); $xml = curl_exec($ch); curl_close($ch);
로그인 후 복사

여기에서는 컬_init()를 사용하여 cURL 객체를 초기화하고 CURLOPT_URL 매개변수를 대상 URL로 설정합니다. CURLOPT_RETURNTRANSFER 매개변수를 1로 설정하면 cURL이 콘텐츠를 직접 출력하는 대신 문자열을 반환합니다.

  1. file_get_contents() 함수

cURL 라이브러리가 XML 데이터를 얻는 동안 file_get_contents() 메서드도 XML 데이터를 얻을 수 있습니다. 다음 예를 따르면 이 목표를 달성할 수 있습니다.

$url = 'http://example.com/example.xml'; $xml = file_get_contents($url);
로그인 후 복사

2. XML 데이터 구문 분석

PHP는 XML 데이터를 구문 분석하는 다양한 방법을 제공합니다.

  1. SimpleXML

SimpleXML은 PHP에서 사용하기 매우 쉬운 XML 파서입니다. SimpleXML을 다음과 같이 사용할 수 있습니다.

$xml = simplexml_load_string($xml);
로그인 후 복사

여기에서는 simplexml_load_string() 메서드를 사용하여 XML 문자열을 구문 분석하고 객체로 변환했습니다.

예를 들어 다음 XML 문서가 있다고 가정합니다.

   PHP 7 Programming Blueprints Vikram Vaswani 28.99   Mastering PHP 7 Chad Russell 39.99  
로그인 후 복사

다음 코드를 사용하여 이 XML 데이터에 액세스하고 출력할 수 있습니다.

foreach ($xml->book as $book) { echo "Title: " . $book->title . "
"; echo "Author: " . $book->author . "
"; echo "Price: " . $book->price . "
"; }
로그인 후 복사

출력은 다음과 같습니다.

Title: PHP 7 Programming Blueprints Author: Vikram Vaswani Price: 28.99 Title: Mastering PHP 7 Author: Chad Russell Price: 39.99
로그인 후 복사
  1. DOMDocument

DOMDocument는 또 다른 것입니다. PHP XML 파서에서 일반적으로 사용됩니다. DOMDocument를 다음과 같이 사용할 수 있습니다.

$doc = new DOMDocument(); $doc->loadXML($xml); $books = $doc->getElementsByTagName("book"); foreach ($books as $book) { $titles = $book->getElementsByTagName("title"); $title = $titles->item(0)->nodeValue; $authors = $book->getElementsByTagName("author"); $author = $authors->item(0)->nodeValue; $prices = $book->getElementsByTagName("price"); $price = $prices->item(0)->nodeValue; echo "Title: " . $title . "
"; echo "Author: " . $author . "
"; echo "Price: " . $price . "
"; }
로그인 후 복사

여기에서는 DOMDocument 클래스를 사용하여 XML 문서를 구문 분석한 다음 getElementsByTagName() 메서드를 사용하여 특정 요소를 가져옵니다. 최종 출력은 SimpleXML 파서와 동일합니다.

3. 요약

이 기사에서는 cURL 라이브러리 및 file_get_contents() 함수를 사용하여 XML 데이터를 얻고 SimpleXML 및 DOMDocument를 사용하여 XML 데이터를 구문 분석하는 것을 포함하여 PHP 크롤러를 사용하여 XML 데이터를 얻고 구문 분석하는 방법을 배웠습니다. 이 기사가 도움이 되기를 바랍니다.

위 내용은 PHP 크롤러를 사용하여 XML 데이터를 가져오고 구문 분석하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿
회사 소개 부인 성명 Sitemap
PHP 중국어 웹사이트:공공복지 온라인 PHP 교육,PHP 학습자의 빠른 성장을 도와주세요!