cakePHPのリンクヘルパーを使う時って
link.php
<?php echo $this->Html->link('新規登録', array('controller' => 'users', 'action' => 'add')); ?>
みたいに書きます。
するとHtmlでは
link.html
<a href="users/add">新規登録</a>
のようになります。
この時、以下のようにリスト要素<li>を<a>の中に入れたいとします。つまり、リスト要素全体をリンクにしたい時。
link.html
<a href="users/add"><li>新規登録</li></a>
cakeで書くと
link.php
<?php echo $this->Html->link('<li>新規登録</li>', array('controller' => 'users', 'action' => 'add')); ?>
としますが、この時、<li>がサニタイズされてしまい、
<li>新規登録</li>
のようにブラウザで表示されてしまいます。
なので次のように書きます。
link.php
<?php echo $this->Html->link('<li>新規登録</li>', array('controller' => 'users', 'action' => 'add'), array('escape' => false)); ?>
すると<li>のサニタイズが解かれ、
link.html
<a href="users/add"><li>新規登録</li></a>
ブラウザの表示でも
新規登録
のようになります。
-結論-
ヘルパーなどのサニタイズを向こうにするには
array('escape' => false)
をオプションに追加するとよい!!