PHPテンプレートからSmartyへ移行
対応付けのメモ
基本的なところとちょっと躓いたところ
変数の表示
<? php echo $var ?>
{$var}
if文
<?php if ($condition): ?> //hoge <?php else: ?> //huga <?php endif; ?>
{if $condition} //hoge {else} //fuga {/if}
foreach文
<?php foreach($collection as $elem): ?> //hoge <?php endforeach; ?>
Smarty
itemに「$」は要らない
{foreach from=$collection item=elem} //hoge {/foreach}
array
<?php echo Asset::img($imgpath, array('class'=>'img-frame')) ?>
{Asset::img($imgpath, ['class'=>'img-frame'])}
文字列の加算
<?php echo Html::anchor('url?id=' . $id, $anchor_name) ?>
Smarty
文字列の中にバッククオート(`)で囲んだ変数を入れることで文字列の加算と同じことができる
{Html::anchor("url?id=`$id`", $anchor_name)}
連想配列
<?php echo $dict['word'] ?>
{$dict.word}