웹 개발에서 XML 데이터를 얻고 구문 분석하는 것은 매우 일반적인 작업입니다. 이 기사에서는 PHP 크롤러를 사용하여 XML 데이터를 얻고 구문 분석하는 방법에 중점을 둘 것입니다.
1. XML 데이터 얻기
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이 콘텐츠를 직접 출력하는 대신 문자열을 반환합니다.
cURL 라이브러리가 XML 데이터를 얻는 동안 file_get_contents() 메서드도 XML 데이터를 얻을 수 있습니다. 다음 예를 따르면 이 목표를 달성할 수 있습니다.
$url = 'http://example.com/example.xml'; $xml = file_get_contents($url);
2. XML 데이터 구문 분석
PHP는 XML 데이터를 구문 분석하는 다양한 방법을 제공합니다.
SimpleXML은 PHP에서 사용하기 매우 쉬운 XML 파서입니다. SimpleXML을 다음과 같이 사용할 수 있습니다.
$xml = simplexml_load_string($xml);
여기에서는 simplexml_load_string() 메서드를 사용하여 XML 문자열을 구문 분석하고 객체로 변환했습니다.
예를 들어 다음 XML 문서가 있다고 가정합니다.
<?xml version="1.0" encoding="UTF-8" ?> <bookstore> <book> <title>PHP 7 Programming Blueprints</title> <author>Vikram Vaswani</author> <price>28.99</price> </book> <book> <title>Mastering PHP 7</title> <author>Chad Russell</author> <price>39.99</price> </book> </bookstore>
다음 코드를 사용하여 이 XML 데이터에 액세스하고 출력할 수 있습니다.
foreach ($xml->book as $book) { echo "Title: " . $book->title . "<br>"; echo "Author: " . $book->author . "<br>"; echo "Price: " . $book->price . "<br>"; }
출력은 다음과 같습니다.
Title: PHP 7 Programming Blueprints Author: Vikram Vaswani Price: 28.99 Title: Mastering PHP 7 Author: Chad Russell Price: 39.99
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 . "<br>"; echo "Author: " . $author . "<br>"; echo "Price: " . $price . "<br>"; }
여기에서는 DOMDocument 클래스를 사용하여 XML 문서를 구문 분석한 다음 getElementsByTagName() 메서드를 사용하여 특정 요소를 가져옵니다. 최종 출력은 SimpleXML 파서와 동일합니다.
3. 요약
이 기사에서는 cURL 라이브러리 및 file_get_contents() 함수를 사용하여 XML 데이터를 얻고 SimpleXML 및 DOMDocument를 사용하여 XML 데이터를 구문 분석하는 것을 포함하여 PHP 크롤러를 사용하여 XML 데이터를 얻고 구문 분석하는 방법을 배웠습니다. 이 기사가 도움이 되기를 바랍니다.
위 내용은 PHP 크롤러를 사용하여 XML 데이터를 가져오고 구문 분석하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!