Smartyで3項演算子

こんにちは、さるまりんです。

できないことを書くのもなんなのですが。。

3項演算子がSmartyで使えないかと調べてました。

3項演算子

3項演算子っていうのは?:を使って、先頭にある条件に一致すれば:より前のもの、それ以外は:より後ろのものと評価されるオペレーションです。いろんな言語に用意されています。下はPHPの例です。

$title = $level > 10 ? '超人' : '凡人';

$level10を超えていたら「超人」それ以外は「凡人」という文字列が変数$titleに代入されます。

これをSmartyでやりたかったのです。

こんな感じを期待していました。

{$title = $level ? > 10 ? '超人' : '凡人'}

これ、できないみたいです。

長くなりますが{if}{else}で頑張ります。

{if $level > 10}
  {$title = '超人'}
{else}
  {$title = '凡人'}
{/if}

長いな〜。3項演算子、使えたらいいのにな〜。

色々試してみて、わかってよかった、よかった。

Smartyも便利に使いたいです。

もう一つわかったこと。

3項演算子って英語ではconditional assignmentっていうんですね。

条件による代入。割り当てでもいいのかな。

用途を考えると言葉ってよくできているなって思いました。

「3項」では目的はわからないですね〜。

読んでくださってありがとうございます。

ではまた!