RSSデータを取得して、内容を表示させる場合、HTMLタグが不要な場合があります。

HTMLのタグを除去する関数としてstrip_tags()という関数があるのですが、これを使う場合注意が必要です。

1つは削除できない場合があることや、削除されすぎてしまうこと。

これについては検索すればいろいろでてくるので、その場合は正規表現を使うことが可能です。

コードは検索エンジンで調べてください。

もうひとつの注意がエスケープ処理です。

今回はこれではまってしまったので備忘録として記事にしています。

エスケープ処理とはHTMLなどのタグを文字列に置き換えることです。

<&lt;に、>&gt;などに置き換えます。

RSSでデータを取得する時、このエスケープ処理がされてしまうと、strip_tags()を使ってもまったくタグが削除されません。

ですので一度、エスケープ処理も元に戻す必要があります。それがhtmlspecialchars_decode()という関数です。

要するにRSSデータから取得したデータをこの関数でエスケープ処理前に戻し、その後、strip_tags()を使うということです。

これによりちゃんとタグが削除されるようになります。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

*

次のHTML タグと属性が使えます: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>