-2

htmlspecialcharsを使用してサイトのコメントをクリーンアップしましたが<>、htmlの特殊文字に変更されています。しかし、私はまた、ここSOでのように、コメントにいくつかのリンクを入れる必要があります。perg_replaceのようなものは、htmlspecialcharsの例外を作成できると思います。たとえば、[LINK]<a href="...">...</a>[/LINK]をhtmlspecialcharsから非表示にします。どのように私はphpでそれを作ることができますか?またはそれを行うためのより良い方法は何ですか?

4

2 に答える 2

1

このコードを使用できます:

$comment = preg_replace('/'.preg_quote('[link]','/').'(.*?)'.preg_quote('[/link]','/').'/eisU',"htmlspecialchars_decode('$1')", $comment);
于 2012-08-13T21:10:36.113 に答える
1

BBCodeまたは同様のものを解析するためにライブラリを使用することをお勧めします-そして一般的に言えば、それは入力自体をサニタイズします。簡単なグーグルがNBBCを見つけましたが、それはあなたの目的には少しやり過ぎかもしれません。BBCodeに心を決めていない限り、BBCodeを使用する必要はありません。Markdownなどに最適なPHPライブラリがあります

于 2012-06-12T21:40:46.260 に答える