RSS フィードから HTML 特殊文字を削除する
RSS フィード ファイルを作成する場合、PHP のstrip_tags 関数を使用して HTML タグを削除するのが一般的です。ただし、この関数は、 、&、© などの HTML 特殊コード文字の削除に失敗することがよくあります。
これらの文字を効果的に削除するには、次のオプションを検討してください。
オプション 1: html_entity_decode を使用する
html_entity_decode を使用して、これらの文字をデコードして元の形式に戻すことができます。
<code class="php">$decodedContent = html_entity_decode($originalContent);</code>
オプション 2: preg_replace を使用する
または、正規表現で preg_replace を使用して文字を直接削除することもできます。
<code class="php">$cleanContent = preg_replace("/&#?[a-z0-9]+;/i","",$originalContent);</code>
このパターンは、数値エンティティ ( ) として表される HTML 特殊文字と一致します。例) または名前付きエンティティ ( )。
代替パターン
置換の精度を向上させるには、Jacco が提案した次の変更されたパターンの使用を検討してください。 :
<code class="php">$cleanContent = preg_replace("/&#?[a-z0-9]{2,8};/i","",$originalContent);</code>
このパターンは、置換を 2 ~ 8 文字のエンティティに制限し、意図しない置換のリスクを軽減します。
以上がRSS フィードから HTML 特殊文字を効果的に削除するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。