使用法 (
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