PHP を使用したコンテンツ フィルタリングのための HTML/XML の解析と処理の例

WBOY
リリース: 2023-09-12 10:24:01
オリジナル
704 人が閲覧しました

PHP を使用したコンテンツ フィルタリングのための HTML/XML の解析と処理の例

PHP を使用したコンテンツ フィルタリングのための HTML/XML の解析と処理の例

はじめに:
Web 開発では、HTML または XML からデータを抽出する必要があることがよくあります。ファイルから特定のコンテンツを抽出するか、コンテンツをフィルタリングして処理します。強力なサーバーサイド スクリプト言語として、PHP には HTML/XML を処理するための多くの組み込み関数とクラスがあり、HTML/XML ファイルを簡単に解析して処理できます。この記事では、PHP を使用してコンテンツ フィルタリングのために HTML/XML を解析および処理する方法の例を示します。

1. HTML/XML 解析
PHP では、file_get_contents()function,## など、いくつかの組み込み関数とクラスを使用して HTML/XML ファイルを解析できます。 #SimpleXMLElement クラスなど

例 1: 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 から、ファイルから

タグと
    タグの下にあるすべての
  • タグを抽出します。
    <?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
    ログイン後にコピー

    例 2: XML の解析


    example.xml## という名前の XML ファイルがあるとします。 # 、内容は次のとおりです: <div class="code" style="position:relative; padding:0px; margin:0px;"><pre class='brush:xml;toolbar:false;'>&lt;books&gt; &lt;book&gt; &lt;title&gt;PHP教程&lt;/title&gt; &lt;author&gt;张三&lt;/author&gt; &lt;/book&gt; &lt;book&gt; &lt;title&gt;JavaScript教程&lt;/title&gt; &lt;author&gt;李四&lt;/author&gt; &lt;/book&gt; &lt;book&gt; &lt;title&gt;Python教程&lt;/title&gt; &lt;author&gt;王五&lt;/author&gt; &lt;/book&gt; &lt;/books&gt;</pre><div class="contentsignin">ログイン後にコピー</div></div>次に、この XML ファイルからすべての本のタイトルと著者を抽出したいと思います。

    <?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. コンテンツ フィルタリング

    HTML/XML ファイルの解析に加えて、コンテンツに対して PHP を使用することもできます。フィルタリング。これは、潜在的なセキュリティ リスクを防ぐために、ユーザーが送信したデータをフィルタリングするために Web 開発でよく使用されます。


    例 3: HTML タグと特殊文字のフィルタリング

    HTML タグと特殊文字を含むユーザーが送信したテキスト コンテンツがあり、これらのタグと文字を削除またはエスケープするとします。

    <?php
    $input = "<p><strong>欢迎访问我们的网站!</strong></p>";
    $output = strip_tags($input); // 过滤HTML标签
    $output = htmlspecialchars($output); // 转义特殊字符
    
    echo $output;
    ?>
    ログイン後にコピー

    上記の PHP コードを実行すると、次の出力が得られます:

    欢迎访问我们的网站!
    ログイン後にコピー

    3. まとめ

    上記の例を通じて、PHP を使用して HTML/ を解析および処理する方法を学びました。 XML、およびコンテンツ フィルタリングを実行する方法。これらのテクニックは Web 開発において非常に実用的であり、特定のコンテンツを迅速に抽出して処理したり、ユーザー入力のセキュリティを確保したりするのに役立ちます。


    この記事が、コンテンツ フィルタリングのための PHP の解析と HTML/XML の処理を​​理解するのに役立つことを願っています。ご質問やご提案がございましたら、お気軽にお問い合わせください。読んでくれてありがとう!

    以上がPHP を使用したコンテンツ フィルタリングのための HTML/XML の解析と処理の例の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!