Table of Contents
有许多ç§�文本数æ�®çš„ç¼–ç �æ–¹å¼�,ISO-8859-1 (Latin1) å’Œ UTF-8 是最常è§�的。
除é�žæ˜Žç¡®å£°æ˜ŽSMARTY_RESOURCE_CHAR_SET使用的å—符集,默认
Smarty当é�‡åˆ°å¤šå—节å—符情况
会使用UTF-8作为内置的å—符集,
而当没有多å—节å—符情况下使用ISO-8859-1。
Note
ISO-8859-1从开始就是PHP内置的默认å—符集。
Unicode从1991年开始演å�˜è€Œæ�¥ï¼Œè€Œä¸”é€�æ¸�替代了其他的å—ç¬¦é›†ï¼Œå› ä¸ºå…¶èƒ½å¯¹å¤§å¤šæ•°å·²çŸ¥çš„å—符进行编ç �,
而且å�šåˆ°äº†è·¨å�„ç§�ä¸�å�Œå—符集的系统(latin, cyrillic, japanese, …)。
UTF-8是unicodeä¸ä½¿ç”¨çš„æœ€å¤šçš„ç¼–ç �,它å�¯ä»¥ç”¨æœ€å°�的尺寸æ��ä¾›æˆ�å�ƒä¸Šä¸‡çš„å—符。
现在unicode和UTF-8已��常�行了,所以强烈建议使用它们。
Note
从Smarty3.1开始,Smartyæ ¸å¿ƒç±»å’Œæ�’件都被设计æˆ�兼容UTF-8的。 è¦�å�šåˆ°è‰¯å¥½çš„兼容性,最好开å�¯å¤šå—节å—符的PECL库。 除é�žPHP环境å�¯ä»¥æ��供这个库,Smartyå°†ä¸�一定能完整兼容UTF-8。
Example 11.1. 设置å—符集编ç �
// 使用日文å—符集编ç �
if (function_exists('mb_internal_charset')) {
mb_internal_charset('EUC-JP');
}
define('SMARTY_RESOURCE_CHAR_SET', 'EUC-JP');
require_once 'libs/Smarty.class.php';
$smarty = new Smarty();
