PHPでは、 Strip_Tags()関数は、文字列からすべてのHTMLおよびPHPタグをクリアするのに役立つ非常に一般的なツールです。これは、ユーザー入力または外部リソースからデータを処理し、データのセキュリティと読みやすさを確保し、悪意のあるスクリプトインジェクションまたはページディスプレイに影響を与える過度のHTMLタグを防ぐ場合に特に重要です。
STRIP_TAGS()関数の基本的な構文は次のとおりです。
<span><span><span class="hljs-title function_ invoke__">strip_tags</span></span><span>(</span><span><span class="hljs-keyword">string</span></span><span> </span><span><span class="hljs-variable">$str</span></span><span>, </span><span><span class="hljs-keyword">string</span></span><span>|</span><span><span class="hljs-literal">null</span></span><span> </span><span><span class="hljs-variable">$allowed_tags</span></span><span> = </span><span><span class="hljs-literal">null</span></span><span>): </span><span><span class="hljs-keyword">string</span></span><span>
</span></span>
$ str :これは、HTMLタグをクリアする必要がある入力文字列です。
$ aplait_tags :これは、特定のHTMLタグを保持できるオプションのパラメーターです。特定のタグ( <b>や<i>など)を保持する場合は、このパラメーターでそれらを指定できます。指定されていない場合、デフォルトはnullです。つまり、すべてのHTMLタグが削除されます。
Strip_tags()を使用してHTMLタグを削除する方法を示す簡単な例を次に示します。
<span><span><span class="hljs-meta"><?php</span></span><span>
</span><span><span class="hljs-variable">$string</span></span><span> = </span><span><span class="hljs-string">"<p>Hello <b>World</b>!</p>"</span></span><span>;
</span><span><span class="hljs-variable">$clean_string</span></span><span> = </span><span><span class="hljs-title function_ invoke__">strip_tags</span></span><span>(</span><span><span class="hljs-variable">$string</span></span><span>);
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-variable">$clean_string</span></span><span>;
</span><span><span class="hljs-meta">?></span></span><span>
</span></span>
出力は次のとおりです。
<span><span><span class="hljs-attribute">Hello</span></span><span> World!
</span></span>
この例では、 sprip_tags()は<p>および<b>タグをクリアし、「Hello World!」という平易なテキストのみが残ります。
HTMLタグをクリアするときに特定のタグを保持する場合は、 $ Aldoct_Tagsパラメーターを使用できます。たとえば、 <b>および<i>タグを保持します。
<span><span><span class="hljs-meta"><?php</span></span><span>
</span><span><span class="hljs-variable">$string</span></span><span> = </span><span><span class="hljs-string">"<p>This is <b>bold</b> and <i>italic</i> text.</p>"</span></span><span>;
</span><span><span class="hljs-variable">$clean_string</span></span><span> = </span><span><span class="hljs-title function_ invoke__">strip_tags</span></span><span>(</span><span><span class="hljs-variable">$string</span></span><span>, </span><span><span class="hljs-string">"<b><i>"</span></span><span>);
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-variable">$clean_string</span></span><span>;
</span><span><span class="hljs-meta">?></span></span><span>
</span></span>
出力は次のとおりです。
<span><span>This is <</span><span><span class="hljs-selector-tag">b</span></span><span>>bold</</span><span><span class="hljs-selector-tag">b</span></span><span>> and <</span><span><span class="hljs-selector-tag">i</span></span><span>>italic</</span><span><span class="hljs-selector-tag">i</span></span><span>> text.
</span></span>
この例では、 <b>および<i>タグは保持され、他のタグ( <p>など)が削除されます。
ユーザー入力フィルタリング:ユーザーがフォームを介してテキストを送信すると、不要なHTMLタグが含まれている場合があります。 Strip_Tags()を使用すると、不要なタグを効果的にクリーンアップし、潜在的なXSS攻撃を防ぐことができます。
データのクリーンアップ:データベースまたは外部APIからHTMLコンテンツを取得する場合、後続の処理または表示のためにコンテンツからHTMLタグを削除する必要がある場合があります。
テキストの表示:ユーザーのコメントやその他のコンテンツを表示する場合、HTML形式なしでプレーンテキストを表示するだけでいい場合があります。現時点では、 Strip_Tags()は非常に便利です。
Strip_Tags()関数は、特定のHTML要素またはネストされたタグを処理できません。たとえば、HTMLコンテンツにネストされたタグが含まれている場合、 Strip_Tags()は、内部タグの動作に影響を与えることなく外部タグのみをクリアできます。
Strip_tags()は、 <script>または<style>タグを含むHTMLを処理するときにほとんどのタグをクリアできますが、スクリプトやスタイルが完全に削除されるように、正規表現などの他の方法を組み合わせる必要がある場合があります。
Strip_Tags()は、文字列からHTMLタグをクリアするのに役立つ非常に実用的なPHP関数です。データフィルタリング、ユーザー入力クリーニング、またはプレーンテキストコンテンツの表示を実行する際の不可欠なツールです。単純な使用方法とオプションでlased_tagsパラメーターを通じて、Webページが私たちのニーズを満たしていることを確認するために保持する必要があるタグを柔軟に制御できます。
関連タグ:
HTML