ホームページ >php教程 >php手册 >HTMLタグをフィルタリングするためにhtmlspecialchars()関数とstrip_tags関数を使用するphpの違い

HTMLタグをフィルタリングするためにhtmlspecialchars()関数とstrip_tags関数を使用するphpの違い

WBOY
WBOYオリジナル
2016-09-30 09:23:101423ブラウズ

元のアドレス: http://www.manongjc.com/article/1103.html

まず、htmlspecialchars関数とstrip_tags関数の使用例を見てみましょう:

リーリー

ブラウザは次の結果を出力します:

リーリー

ページのソースコードを表示すると、結果は次のようになります:

リーリー

結果から、htmlspecialchars()とstrip_tagsの違いは次のとおりであることがわかります:

違い1:

strip_tags 関数は HTML タグを削除するために使用されますが、htmlspecialchars は HTML タグを削除せず、タグを HTML インスタンスに変換するだけです。そのため、この 2 つの最大の違いは、1 つは HTML タグを削除することであり、もう 1 つは HTML タグを変換することです。他のキャラクターに。

違い2:

HTML タグから削除する必要がある文字列内のタグが元々間違っている場合 (たとえば、大なり記号が欠落している場合)、strip_tags 関数を使用するとエラーが返されますが、htmlspecialchars ではエラーは発生しません。引き続き HTML エンティティに変換されます。

違い 3:

XSS 攻撃を防ぐ場合、strip_tags は HTML タグを削除できますが、削除はしないため、一般に htmlspecialchars 関数を使用することをお勧めします"或'。因此就算你使用了strip_tags,仍然需要使用htmlspecialchars函数来过滤掉"或'

フォーム送信またはユーザー掲示板で、元のデータ出力をブラウザに送信したい場合は、strip_tags 関数の代わりに htmlspecialchars 関数を使用してください。

htmlspecialchars() 関数とstrip_tags 関数については、こちらを参照してください:

http://www.manongjc.com/article/1213.html

http://www.manongjc.com/article/1099.html

http://www.manongjc.com/article/795.html

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。