今回は、Twigの変数の扱い方について簡単に書いていこうと思います。
まず、PHP側でテンプレートに表示する変数のセットは以下のようになります。
[php]
<?php
require_once 'Twig/Autoloader.php';
Twig_Autoloader::register();
// Twigの基本設定
$loader = new Twig_Loader_Filesystem('./');
$twig = new Twig_Environment($loader, array(
'cache' => './cache',
));
// テンプレートの呼び出し
$template = $twig->loadTemplate('test.html');
// 変数をセットして出力
echo $template->render(array('test' => 'テスト'));
[twig]
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>テスト</title>
</head>
<body>
{{ test }}
</body>
</html>
[表示]
テスト
test変数に「テスト」という文字列をセットしてTwig側で呼び出すことができました。
配列やオブジェクトを渡すこともできます。
[php]
$array = array(
'hello' => 'こんにちは'
);
echo $template->render(array('test' => $array));
[twig]
{{ test.hello }}
のように、「.」を使って配列の要素を指定することができます。
[php]
class Test {
public $hello = 'こんにちは';
}
$object = new Test();
echo $template->render(array('test' => $object));
[twig]
{{ test.hello }}
オブジェクトの場合も、「.」を使ってプロパティにアクセスすることができます。
[php]
class Test {
public function hello() {
return 'こんにちは';
}
}
$object = new Test();
echo $template->render(array('test' => $object));
[twig]
{{ test.hello }}
オブジェクトの場合も、「.」を使ってプロパティにアクセスすることができます。
[php]
class Test {
public function getHello() {
return 'こんにちは';
}
}
$object = new Test();
echo $template->render(array('test' => $object));
[twig]
{{ test.hello }}
また、オブジェクトのgetterメソッドにアクセスすることもできます。
次回は、Twigの構文について書いてみようと思います。
0 件のコメント:
コメントを投稿