木曜日, 8月 21, 2008

PHPでHTMLタグを取り除く

PHPでは、HTMLを「文字通り表示する」 htmlspecialchars($str) という関数がある。

不等号が含まれる文章やコードなど、HTMLタグをそのまま表示するときに使う。

それでは、その逆の「タグを除去する」関数があるかといえば、特に設定されていない(らしい)。

正規表現を使うと、それらしきものができる。しかし、クォートで囲まれたカギ括弧などには対応しない。

contents$str="<html a=\">\">contents</html>";
echo mb_ereg_replace("<[^>]*>","",$str);

クォートで囲まれたカギ括弧などは、特別に指定しなければならない。

echo mb_ereg_replace("<[^>]*\".*\"[^>]*>","",$str);

Flask の Blueprint のテンプレート問題

  Flask の Blueprint は、ルート、静的ファイル、テンプレートをまとめて管理できます。しかし、テンプレートが指定できません。 ここでは、Blueprint の template_folder の問題点と回避策を説明します。 Blueprint のテンプレート問題...