CakePHP ヘルパーの出力を echo を使わずに出力する方法
※この投稿の方法はバージョン1.1 までしか使用できないようです。1.2 のソースを確認したところ、$html->input の$return パラメータはなくなっていました。/app/config/core.php に AUTO_OUTPUT という定数もなくなっていました。ご注意ください。
Cakephp のヘルパーを使用していて
<?php echo $html->input('Model/filed', array()); ?>
と書くところを
<?php $html->input('Model/field', array()); ?>
と echo を使用せずに出力するには
/app/config/core.php
AUTO_OUTPUT = true;
にすれば、自動的に出力するようになります。
私はつい echo を書き忘れてしまうので助かります。
ヘルパーのメソッドの $return パラメータを true にするとこの AUTO_OUTPUT を無効にすることもできます。
ただ、各メソッドによって、$return パラメータの位置がバラバラなので、書くときにはヘルパーのソースを確認する必要があるかと思います。
ちなにみに input の場合は
<?php $html->input('Model/field', array(), true); ?>
とすると自動出力を抑止できますので、上記は何も表示されなくなります。
CakePHP 日本語マニュアル
10章 ヘルパー
関連する投稿
2 comments
コメントをどうぞ
Additional comments powered by BackType
[...] ヘルパーの自動出力を抑止する(参考:ヘルパーの出力を echo を使わずに出力する方法) [...]
3certificate…
…