私は自分のウェブサイトでユーザーの入力を受け取り、WYSIWYGエディターでフォーマットすることができます。htmlspecialcharsをエスケープ文字に変換する正規表現
今、PHPでENT_QUotesを使用してhtmlspecialcharsで取得した投稿全体を実行します。
そこから、正規表現を実行して、許可されたルールを実際のhtmlに戻したいと思います。
<p>TEXT</p>
になるように
<p>TEXT</p>
は、正規表現でこれを行う方法はありますか?私はそれと家族ではない。しかし、基本的にエスケープされたタグを探し、実際のタグに置き換え、すべてを真ん中に保ちますか?
編集:正規表現で有効なHTMLコードを作成します。まず、htmlspecialchars
を使って100%セキュアにして、すべてのエンティティのバージョン< &を取得します。それから私は正規表現を元に戻したいタグだけに変換したい。すべてのエンティティを標準に戻したいとは思いません。私が望むタグをデコードしたいだけです。例えば<p>TEXT</p>
の正規表現検索を<p>TEXT</p>
に戻す - 私は<
、&
、>
のように再変換したくないです。私が望むタグだけを再変換したい。この例では段落タグです。
私はそれが有効なHTMLであることを望みます。私はhtmlspecialcharsを使って最初は100%安全です。それから私は正規表現を元に戻したいタグだけに変換したい。 – Incognito
これは例です。私はREALのhtml「
TEXT
」 この方法で私は、エンティティへのすべてのユーザー入力をコードしているになるためにはhtmlspecialchars後に「> <P> TEXT </P」は「TEXT
」のエンコードされたバージョンが欲しいです。その後、正規表現を使ってタグだけをコード化して、私は本物のhtmlに戻したいと思います。 – Incognito属性は許可されていません。すべての引用はhtmlspecialcharsのent_quotesでエスケープされます。 私は実際のバージョンにクォートを戻したくありません。 regedを使用して
のエンコードされたバージョンを見つけ、エンコードされたバージョンの末尾に
のテキストを置き、実際のhtmlに戻してください。 – Incognito