以前、以下の様な記事を書きました。
https://deep-blog.jp/engineer/archives/3803
で、
同じ様に全角英数字を半角に変換するという処理を実案件でも実装することになりました。
ということで、
今回は、modifier(修飾子プラグイン)を作成して対応することに。
http://www.smarty.net/docsv2/ja/plugins.modifiers.tpl
modifierを作成する場合は、
===========================================
ファイル名 => modifier.name(名前).php
関数名 => smarty_modifier_name(名前)
アップロード先 => /libs/plugins/
===========================================
とすればいいので、
取り敢えず、
「convert_kana」という名前にする場合、
modifier.convert_kana.php
というファイルを作成して、
以下のコードを記述してやります。
<?php function smarty_modifier_convert_kana ($string) { return mb_convert_kana($string,"a","UTF-8"); } ?>
で、
/libs/plugins/
にアップロードします。
あとは、
テンプレート側で、
{$data.num|convert_kana}
とすれば完了です。
せっかくテンプレートファイルを分けているのに、
複雑な処理をテンプレートに書いてごちゃごちゃさせるのは嫌な場合には、
こうした方がいいですね!!
この記事へのコメントはありません。