smartyでの0(ゼロ)の扱い

smartyで以下の項目を満たすようにタグを作るのに手こずりました。

・0(ゼロ)は表示する
・数値が何もない場合は、半角スペースを入れる(htmlの表示の関係で)


まず最初にやったことが、

{if $hoge}{$hoge}{else} {/if}

これだと、0(ゼロ)がNULLと同じ扱いになるので、
0(ゼロ)という表示はされませんでした。


そこでsmartyのif分の中にPHPの関数を入れられることを知り、
以下のようにしてみました。

{if count($hoge)}{$hoge}{else} {/if}

しかし、これでも0(ゼロ)がNULLと同じ扱いになるので、
0(ゼロ)という表示はされませんでした。


そもそもif分の中でPHP関数が使えるのであれば、、、
ということで、以下のような表記に変更。

{if strlen($hoge)}{$hoge}{else} {/if}


これでやっとできました。

スポンサーリンク
スポンサーリンク