Smarty - 修飾子: truncate

Smartyの修飾子 truncateを
マルチバイト文字でも文字化けしないようにしたプラグイン.
Smartyのpluginsのフォルダに入れておけば使える.

Smarty modifier.mbtruncate.php

modifier.mbtruncate.php

<?php
function smarty_modifier_mbtruncate($string, $length = 80, $etc = '...') {
if ($length == 0) {return '';}

if (strlen($string) > $length) {
$length -= strlen($etc);
return mb_strcut($string, 0, $length).$etc;
} else {
return $string;
}
}
?>


{$string|mbtruncate:30}