Feb 24
逆引きrhaco(?)20: テンプレート内のデバッグ1 ログを使う
rhacoのテンプレートは便利なんですが
テンプレートの表示が変だったりした場合、データの確認などが大変だったりします。ループで回ってる変数の内容とか知りたいですよね!そんな時に簡単に確認する方法は「ログをテンプレートにセットしておく」です。
※追記 別にセットしなくてもログ使えるそうです!<html> <head> <title>index</title> <body> <div><?php L::d($obj);?></div> </body> </html>
であっさりログ取れるそうです。riafさんご指摘ありがとうございました。
と言うわけでこの続きは見る必要無い気がしますが・・・
例えばこんな感じで使用します。
index.php
<?php
include('./__init__.php');
Rhaco::import('tag.HtmlParser');
$parser = new HtmlParser();
$parser->setVariable('obj',new Hoge());
$parser->setVariable('l',new Logger());
$parser->write('index.html');
class Hoge {
var $a = 1;
function add($b){
$this->a = $this->a + $b;
echo $this->a;
}
}
?>
resources/templates/index.html
<html>
<head>
<title>index</title>
<body>
<div>{$l.d($obj)}</div>
</body>
</html>
こうすると
array(2) { [0]=> string(64) ".../Rhaco.php... : eval()'d code:..." [1]=> object(Hoge)#4 (1) { ["a"]=> int(1) } }
というような内容が表示されます。このようにrhacoのテンプレートはオブジェクトをセットすることで、そのメソッドを自由に使えますので、チェック用のクラスを作ってみても楽しいと思います。その時は是非公開して下さい。
このエントリーのはてなブックマーク (