HTML - smarty - 長い文字を切り詰める

クラウディア 
1. 概要
2. 長い文字を切り詰める

1. 概要

 例題が難しいですが、長い文章を表題に使う場合とかかな・・・。  「なんとかかんとか...」とか「なんとかかんとか云々」とか末尾を省略したいときがあります。  「smarty」では、それを構文で実現できるようです。  本ページは、下記のサイトを参考にさせていただきました。
指定の文字数で文字列を切り捨てる(truncate)

2. 長い文字を切り詰める

 参考サイトでは、基本構文は

{$変数|truncate}
 で、この場合、80文字で切り詰めると書かれているのですが・・・。  なぜか、わたしの環境では、80文字より長い文字を書いても切り詰められませんでした。  まぁ、文字数を指定する方がいいでしょう。  文字数を指定する場合は

{$変数|truncate:文字数}
 で指定します。  更に、末尾は、デフォルトで「...」になっていますが。

{$変数|truncate:文字数:末尾指定文字列}
 と記述することによって、末尾が指定した文字列になります。

$smarty->assign('iroha', 'いろはにほへと ちりぬるを');
 と記述しておいて、テンプレートに

{$iroha}
{$iroha|truncate:6}
{$iroha|truncate:6:'(云々)'}
 と書きましたらば、ブラウザには

いろはにほへと ちりぬるを
いろは...
いろ(云々)
 と表示されます。  文字数は、バイトではなく文字数で計算しているようなのですが、2行目と3行目の文字数が異なるのは、謎です。