> 백엔드 개발 > PHP 튜토리얼 > PHP를 사용한 콘텐츠 필터링을 위한 HTML/XML 구문 분석 및 처리 예

PHP를 사용한 콘텐츠 필터링을 위한 HTML/XML 구문 분석 및 처리 예

WBOY
풀어 주다: 2023-09-12 10:24:01
원래의
739명이 탐색했습니다.

PHP를 사용한 콘텐츠 필터링을 위한 HTML/XML 구문 분석 및 처리 예

콘텐츠 필터링을 위해 HTML/XML을 구문 분석하고 처리하기 위해 PHP를 사용하는 예

소개:
웹 개발에서는 HTML 또는 XML 파일에서 특정 콘텐츠를 추출하거나 해당 콘텐츠를 필터링하고 필터링해야 하는 경우가 많습니다. . 강력한 서버측 스크립팅 언어인 PHP에는 HTML/XML 처리를 위한 많은 내장 함수와 클래스가 있어 HTML/XML 파일을 쉽게 구문 분석하고 처리할 수 있습니다. 이 기사에서는 PHP를 사용하여 콘텐츠 필터링을 위해 HTML/XML을 구문 분석하고 처리하는 방법의 예를 보여줍니다.

1. HTML/XML 구문 분석
PHP에서는 file_get_contents() 함수, SimpleXMLElement와 같은 일부 내장 함수와 클래스를 사용하여 HTML/XML 파일을 구문 분석할 수 있습니다. 코드> 클래스 등 <code>file_get_contents()函数、SimpleXMLElement类等。

示例一:解析HTML
我们假设有一个名为example.html的HTML文件,内容如下:

<html>
<body>
  <h1>欢迎来到我的网站</h1>
  <p>这是一个演示HTML解析的示例页面。</p>
  <ul>
    <li>列表项1</li>
    <li>列表项2</li>
    <li>列表项3</li>
  </ul>
</body>
</html>
로그인 후 복사

现在,我们希望从该HTML文件中提取<h1>标签和<ul>标签下的所有<li>标签。

<?php
$html = file_get_contents('example.html');

$dom = new DOMDocument();
$dom->loadHTML($html);

$h1 = $dom->getElementsByTagName('h1')->item(0)->nodeValue; // 提取<h1>标签内容

$liList = $dom->getElementsByTagName('li');
foreach ($liList as $li) {
    echo $li->nodeValue . "<br>"; // 遍历输出所有<li>标签内容
}
?>
로그인 후 복사

运行上述PHP代码,我们可以得到以下输出:

欢迎来到我的网站
列表项1
列表项2
列表项3
로그인 후 복사

示例二:解析XML
假设有一个名为example.xml

예제 1: HTML 구문 분석

다음 내용이 포함된 example.html이라는 HTML 파일이 있다고 가정합니다.

<books>
  <book>
    <title>PHP教程</title>
    <author>张三</author>
  </book>
  <book>
    <title>JavaScript教程</title>
    <author>李四</author>
  </book>
  <book>
    <title>Python教程</title>
    <author>王五</author>
  </book>
</books>
로그인 후 복사

이제 이 HTML 파일에서 <h1&gt을 추출하려고 합니다. ; 태그와 <ul> 태그 아래의 모든 <li> 태그.

<?php
$xml = file_get_contents('example.xml');

$dom = new SimpleXMLElement($xml);

foreach ($dom->book as $book) {
    $title = $book->title;
    $author = $book->author;
    
    echo "书名:$title,作者:$author<br>";
}
?>
로그인 후 복사

위의 PHP 코드를 실행하면 다음과 같은 출력을 얻을 수 있습니다.

书名:PHP教程,作者:张三
书名:JavaScript教程,作者:李四
书名:Python教程,作者:王五
로그인 후 복사

예제 2: XML 구문 분석

다음 내용이 포함된 example.xml이라는 XML 파일이 있다고 가정합니다.

<?php
$input = "<p><strong>欢迎访问我们的网站!</strong></p>";
$output = strip_tags($input); // 过滤HTML标签
$output = htmlspecialchars($output); // 转义特殊字符

echo $output;
?>
로그인 후 복사

이제 이 XML 파일에서 모든 책 제목과 저자를 추출하려고 합니다.

欢迎访问我们的网站!
로그인 후 복사
위의 PHP 코드를 실행하면 다음과 같은 출력을 얻을 수 있습니다.

rrreee
2. 콘텐츠 필터링

HTML/XML 파일을 구문 분석하는 것 외에도 콘텐츠 필터링에 PHP를 사용할 수도 있습니다. 이는 잠재적인 보안 위험을 방지하기 위해 사용자가 제출한 데이터를 필터링하기 위해 웹 개발에서 자주 사용됩니다.

예 3: HTML 태그 및 특수 문자 필터링🎜 HTML 태그와 특수 문자가 포함된 사용자 제출 텍스트 콘텐츠가 있고 이러한 태그와 문자를 제거하거나 이스케이프하려고 한다고 가정해 보겠습니다. 🎜rrreee🎜위 PHP 코드를 실행하면 다음과 같은 출력을 얻을 수 있습니다. 🎜rrreee🎜 3. 요약🎜위의 예를 통해 PHP를 사용하여 HTML/XML을 구문 분석하고 처리하는 방법과 콘텐츠 필터링을 수행하는 방법을 배웠습니다. 이러한 기술은 웹 개발에 매우 ​​실용적이며 특정 콘텐츠를 신속하게 추출 및 처리하고 사용자 입력의 보안을 보장하는 데 도움이 될 수 있습니다. 🎜🎜이 기사가 PHP가 콘텐츠 필터링을 위해 HTML/XML을 구문 분석하고 처리하는 방법을 이해하는 데 도움이 되기를 바랍니다! 질문이나 제안 사항이 있으시면 언제든지 저희에게 연락해 주십시오. 읽어 주셔서 감사합니다! 🎜

위 내용은 PHP를 사용한 콘텐츠 필터링을 위한 HTML/XML 구문 분석 및 처리 예의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿