下記の記事から引用しました。
wp_strip_all_tags()
「スクリプトとスタイルを含むすべてのHTMLタグを正しく削除します。」
wp_filter_nohtml_kses()
「コンテンツ内のすべてのHTMLを削除します。」
参照:
これらの関数 出現 はまったく同じ目的にかなう。それらはどう違いますか?
Wp_strip_all_tags()関数は、scriptとstyleタグの内容を含むすべてのHTMLを削除します。
PHP strip_tags()関数は、スクリプトおよびスタイルタグの内容を削除しないことを除いて、ほぼ同じことを行います。 WPのwp_strip_all_tags()関数は、スクリプトとスタイルを手動で削除した後にこれを使用します。
Wp_filter_nohtml_kses()関数はksesを使用してすべてのHTMLを削除します。主な違いは、HTMLの解析に使用されるエンジンです。 PHPのstrip_tags()は、壊れたHTMLや意図的に改ざんされたHTMLを特にうまく処理しません。HTMLの検証を実行しないからです。 ksesエンジンは不正なHTMLをより良い方法で処理しようとしますが、完全なHTMLパーサーでもありません。また遅いです。
Wp_strip_all_tags()関数が一般的に推奨されています。ほとんどの場合、これで十分です。 ksesバージョンは完全を期すためにほとんど含まれていますが、特に形式の悪いHTMLを扱っている場合には役に立つかもしれません。