strip_tags

(PHP 3 >= 3.0.8, PHP 4, PHP 5)

strip_tags -- 文字列からHTMLおよびPHPタグを取り除く

説明

string strip_tags ( string str [, string allowable_tags] )

この関数は、指定した文字列(str)から全てのHTMLおよびPHPタグを取り除きま す。この関数は、fgetss() 関数と同じタグ除去アルゴリズムを使用します。

オプションの2番目の引数により、取り除かないタグを指定できます。

注意: allowable_tagsは、PHP3.0.13, PHP4.0.0で追加されました。

PHP 4.3.0以降、HTMLコメントも削除されるようになりました。この機能はハードコードされており、 allowable_tagsで変更することはできません。

警告

現在、strip_tags()はHTMLの検証を行わないため、 不完全または壊れたタグにより予想以上に多くのテキスト/データが削除される 可能性があります。

警告

この関数は、allowable_tagsで許可した全てのタグ の属性を修整しません。これには、style お よび onmouseover属性が含まれており、悪意のあ るユーザが他のユーザに見せるようなテキストを投稿する際に危険な行 為を行う可能性があります。

例 1. strip_tags()の例

<?php
$text
= '<p>Test paragraph.</p><!-- Comment --> <a href="#fragment">Other text</a>';
echo
strip_tags($text);
echo
"\n";

// Allow <p> and <a>
echo strip_tags($text, '<p><a>');
?>

上の例の出力は以下となります。

Test paragraph. Other text
<p>Test paragraph.</p> <a href="#fragment">Other text</a>

strip_tags()は、PHP 5.0.0以降バイナリセーフとなっています。

htmlspecialchars()も参照してください。