Home > CakePHP | PHP > CakePHP 1.1.15.5144以降はHtmlHelper#tagValueに注意

CakePHP 1.1.15.5144以降はHtmlHelper#tagValueに注意

この記事の所要時間: 13

確認画面等で入力値を表示するのにHtmlHelper#tagValueを使っています。

これは内部でHTMLタグをエスケープしてくれるので重宝していたのですが、1.1.15.5144から、このメソッドにエスケープするか否かを表すフラグが追加されました。

[cake/libs/view/helpers/html.php]

<?php

   function tagValue($fieldName, $escape = false) {

?>

困った事にデフォルトではfalseになっているので、従来の[$html->tagValue(‘Foo/bar’);]のような使い方をしているとHTMLタグがそのまま出力されてしまいます。1.1.15.5144以降(昨日リリースされた1.1.16.5421も含む)でHTMLタグをエスケープするには以下のように第2引数にtrueを指定しなければなりません。

// tagValueでHTMLタグをエスケープ
<?php echo $html->tagValue('Foo/bar', true);
// もしくはh()で囲む
<?php echo h($html->tagValue('Foo/bar')) ?>;

1.1.14.4797以前から1.1.15.5144以降へバージョンアップする際はくれぐれもご用心を。

ちなみに1.2.0.5147ではtagValueがdeprecatedになっており、代わりにvalueメソッドを使うようになるようです。

Pocket

follow us in feedly

トラックバック:1

このエントリーのトラックバックURL
http://www.1x1.jp/blog/2007/07/cakephp_11155144_tagvalue.html/trackback
Listed below are links to weblogs that reference
CakePHP 1.1.15.5144以降はHtmlHelper#tagValueに注意 from Shin x blog
pingback from CakePHP HtmlHelper::tagValue のHTMLエスケープ処理 | Sun Limited Mt. 08-04-01 (火) 10:52

[…] ただ、 CakePHP 1.1.15.5144以降はHtmlHelper#tagValueに注意 | Shin x blog に書かれているように、CakePHP のバージョン1.1.15.5144 からエスケープするかのフラグが追加されたようです。 […]

Home > CakePHP | PHP > CakePHP 1.1.15.5144以降はHtmlHelper#tagValueに注意

検索
フィード
メタ情報

Return to page top