"일꾼이 일을 잘하려면 먼저 도구를 갈고 닦아야 한다." - 공자, 『논어』.
첫 장 > 프로그램 작성 > 특정 클래스가있는 HTML 요소에서 PHP DOM을 사용하여 플랫 배열로 텍스트를 추출하는 방법은 무엇입니까?

특정 클래스가있는 HTML 요소에서 PHP DOM을 사용하여 플랫 배열로 텍스트를 추출하는 방법은 무엇입니까?

2025-02-06에 게시되었습니다
검색:291

How to Extract Text from HTML Elements with Specific Classes into Flat Arrays using PHP DOM?

문제

는 여러 p 요소 사이에 배포 된 텍스트가 포함되어 있습니다. 클래스 이름을 번갈아 가며, 작업은 텍스트를 두 개의 배열로 저장하는 것입니다. 하나는 제목과 컨텐츠 용입니다. 예를 들어, 다음 html이 주어지면

1 장

이것은 1 장 입니다

다음 출력을 얻어야합니다. $ contment =

;

Chapter 1

This is chapter 1

솔루션

Chapter 1

This is chapter 1

PHP DOM, 우리는 domdocument와 domxpath를 사용합니다. 솔루션에는 다음 단계가 포함됩니다 :

html을 domdocument 객체에로드하십시오 :

    $ dom = new domdocument (); $ dom-> loadhtml ($ test);
$dom = new DOMDocument();
$dom->loadHTML($test);
parsetoArray () 함수를 사용하여 지정된 클래스의 요소에서 텍스트를 추출합니다. $ content = parsetoArray ($ xpath, 'normal-h');
  1. parsetoArray () 함수에서

Chapter 1

This is chapter 1

지정된 클래스에 대한 xpath 쿼리를 수행합니다.
  1. 일치하는 노드를 통해 반복하고 텍스트 내용을 추출합니다.
추출 된 텍스트를 배열에 저장합니다.
$heading = parseToArray($xpath, 'Heading1-H');
$content = parseToArray($xpath, 'Normal-H');

이 접근법은 HTML 문서에서 텍스트를 효율적으로 추출하기 위해 PHP DOM 및 XPath의 힘을 활용하여보다 복잡하고 타겟팅 된 컨텐츠 조작을 가능하게합니다.

최신 튜토리얼 더>

부인 성명: 제공된 모든 리소스는 부분적으로 인터넷에서 가져온 것입니다. 귀하의 저작권이나 기타 권리 및 이익이 침해된 경우 자세한 이유를 설명하고 저작권 또는 권리 및 이익에 대한 증거를 제공한 후 이메일([email protected])로 보내주십시오. 최대한 빨리 처리해 드리겠습니다.

Copyright© 2022 湘ICP备2022001581号-3