INFINITY BLUE
msgbartop
ご訪問ありがとうございます。『INFINITY BLUE』は、WEB+DB開発の情報や仕事の実績などを紹介しています。
msgbarbottom

27 11月 07 cakePHP: h()関数のクオート変換モードのカスタマイズ

cakePHPのクロスサイトスクリプティング対策としてh()関数を使用することが推奨されています。
h()関数はPHP のネイティブ関数htmlspecialchars()の短縮表記です。

検品中にクライアントからシングルクオートも対応してほしいという要望があり、時間もなかったことから、コア部分のcake/basics.php-function h($text) {…}を修正することにしました。
function h($text) {
if (is_array($text)) {
return array_map('h', $text);
}
-return htmlspecialchars($text);
+return htmlspecialchars($text, ENT_QUOTES);
}

今思うと、
function h($text, $mode=ENT_QUOTES) {
if (is_array($text)) {
return array_map('h', $text);
}
-return htmlspecialchars($text);
+return htmlspecialchars($text, $mode);
}
のようにクオート変換モードを設定できるようにしてほうが適切でしたね。



Reader's Comments

  1. |

    ここ変更したかったので、助かりました。ありがとうございました。



Leave a Comment