木曜日, 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);

Laravel サイトのアップグレード

 Laravel のサイトをアップグレードする機会がありましたので、その方法をここで書いておきたいと思います。かなり構成というか書き方が変わってきているので注意が必要です。 1. 新しいLaravelプロジェクトの作成 まずはクリーンなLaravel環境を作成します。 compo...