旌旗博客

2010-10-22

windows下smarty中的date_format格式化乱码问题

Filed under: 未分类 — rocky @ 17:15

环境:Windows XP Professional SP3中文版,Apache 2.2,PHP 5.2.14,smarty 2.6.18

代码:<{$time|date_format:"%Y年%m月"}>

输出:乱码如:2010年%m月�G

原因:默认的locale是

LC_COLLATE=C;LC_CTYPE=Chinese_People's Republic of China.936;LC_MONETARY=C;LC_NUMERIC=C;LC_TIME=C
解决方法:在调用smarty前用 setlocale(LC_CTYPE, "C"); 把LC_CTYPE设置成"C”就可以了。

没有评论 »

No comments yet.

RSS feed for comments on this post. TrackBack URL

Leave a comment

Powered by WordPress