smartyのフィルターと関数のオーバーライド

フィルター

	function __construct(){
		

		#略
		
		$this->register_prefilter('toEUC');
		
		
	}

関数のオーバーライド

displayに処理追加
例えば携帯だったら、SJISで出すみたいな

    function display($resource_name, $cache_id = null, $compile_id = null)
    {
    		$content = parent::fetch($resource_name, $cache_id, $compile_id);
		
		if( Net_UserAgent_Mobile::isMobile() ){
			//$content = mb_convert_kana($content, "ak");
			print mb_convert_encoding( $content, "SJIS", "EUC" ) ;
		} else {
			print $content;
		}
    }

prefilterでEUCにしておいて、displayでSJISにしたらうまくいった。
でも、絵文字が化けるとかいう話が聞こえてきたけど、未確認。
{literal}須{/literal}はやんなくておk