使用法 (
flexy:if="variable"
, flexy:if="method()"
, flexy:if="object.method()"
)
含まれるタグを囲む if 条件を作成します。
string variable -
$object->variable に関連します。
string method -
$object->method() に関連します。
string object.method
$object->object->method() に関連します。
foreach 用の変数の設定
class output {
function hasTest() {
return false;
}
function run() {
$this->a = true;
$this->message = 'oops'
$template->outputObject($this);
}
}
テンプレートにおける flexy:if
<a href="{baseURL}/somepath.html" flexy:if="a">this is the a link</a>
<a href="{baseURL}/somepath.html" flexy:if="!a">this is not the a link</a>
<b flexy:if="hasTest()">hasTest is true</b>
<b flexy:if="!hasTest()">hasTest is false</b>
<span flexy:if="message" class="error">{message}</span>
コンパイルされたテンプレート
<?php if ($t->a) { ?><A HREF="<?php echo htmlspecialchars($t->baseURL); ?>/somepath.html">this is the a link</A><?php } ?>
<?php if (!$t->a) { ?><A HREF="<?php echo htmlspecialchars($t->baseURL); ?>/somepath.html">this is not the a link</A><?php } ?>
<?php if (isset($t) && method_exists($t,'hasTest')) if ($t->hasTest()) { ?><B>hasTest is true</B><?php } ?>
<?php if (isset($t) && method_exists($t,'hasTest')) if (!$t->hasTest()) { ?><B>hasTest is false</B><?php } ?>
<?php if ($t->message) { ?><SPAN CLASS="error"><?php echo htmlspecialchars($t->message); ?></SPAN><?php } ?>
シンプルな出力例
this is the a link
hasTest is false
oops