CakePHP & PHP 2007/07/10 10:09
CakePHP 1.1.15.5144以降はHtmlHelper#tagValueに注意
確認画面等で入力値を表示するのにHtmlHelper#tagValueを使っています。
これは内部でHTMLタグをエスケープしてくれるので重宝していたのですが、1.1.15.5144から、このメソッドにエスケープするか否かを表すフラグが追加されました。
[cake/libs/view/helpers/html.php]
PHP:
-
<?php
-
-
function tagValue($fieldName, $escape = false) {
-
-
?>
困った事にデフォルトではfalseになっているので、従来の[$html->tagValue('Foo/bar');]のような使い方をしているとHTMLタグがそのまま出力されてしまいます。1.1.15.5144以降(昨日リリースされた1.1.16.5421も含む)でHTMLタグをエスケープするには以下のように第2引数にtrueを指定しなければなりません。
PHP:
1.1.14.4797以前から1.1.15.5144以降へバージョンアップする際はくれぐれもご用心を。
ちなみに1.2.0.5147ではtagValueがdeprecatedになっており、代わりにvalueメソッドを使うようになるようです。
■Related Posts
- CakePHP解説本を書きました
- CakePHP1.1.12.4205&1.2.0.4206_devリリース
- CakePHP Screencastまとめ
- CakeMatsuriにまつわる7つの疑問
- CakePHPのコーディング規約





on 01 4月 2008 at 10:52 1.CakePHP HtmlHelper::tagValue のHTMLエスケープ処理 | Sun Limited Mt. said …
[...] ただ、 CakePHP 1.1.15.5144以降はHtmlHelper#tagValueに注意 | Shin x blog に書かれているように、CakePHP のバージョン1.1.15.5144 からエスケープするかのフラグが追加されたようです。 [...]