1.Apache要提供中文支持,可以在配置文件(默认为Httpd.conf)中加入以下行:
AddDefaultCharset GB2312
但就笔者的经验,Apache的内容服务是可以支持中文,但是Apache的配置文件的内容(除了注释内容)是不支持中文的。比如我想在Apache中建立一个“我的网站”的别名指向“C:/我的网站/”这个目录,使用指令“Alias /我的网站/ C:/我的网站/”是不行的,无论是别名,还是目录名中,都是不能出现中文的,否则Apache就因加载不了配置文件而无法启动。
不知道这是Apache固有的特性还是我有什么设置没有配好,还希望高手指点迷津。
2.PHP中,是通过在配置文件(一般为php.ini)中添加“default_charset = GB2312”这样的行实现的。
3.MySQL的语言设置有些复杂。既可以对服务器设置默认字库,也可以对数据库的单独表格进行字符集设置,最细致的莫过于还能对单独的字段(Field)进行设置(据说是从4.1版开始的)。每处同时要设置Charset(字符集)和Collcation(拼写检查)两个选项。
(1)在MySQL中的配置文件(通常是my.ini)中加入
#设置字符集
default-character-set=gbk
#设置拼写检查
default-collation=gbk_chinese_ci
来支持中文。不设置的话使用Latin5字符集。
也可在MySQL Administrator>>Startup Variables>>Advanced>>Localization中进行设置。
(2)对表格的字符集设置,是在MySQL Administrator中的选中表格>>Edit Table>>Table Options>>Character Set来设置的。留空的话使用服务器默认字体。
(3)MySQL Administrator中的选中表格>>Edit Table>>Columns and Indices>>选中列>>Column Details中进行字符集设置。留空的话使用表格默认字体。
4.应该是从MySQL5.0开始吧,每次在PHP中连接MySQL数据库,要在mysql_connect后面加一句SET NAMES ***来指定字符集,使用SET NAMES UTF8 即可使得UTF8的数据库消除乱码,对于GBK的数据库则使用SET NAMES GBK,不如此使用,放进MySQL的中文数据8成是乱码。代码示例:
$mysql_mylink = mysql_connect($mysql_host, $mysql_user, $mysql_pass);
mysql_query("SET NAMES 'GBK'");
5.另外值得一提的是MySQL的管理工具MySQL-GUI-Tools。
本人对MySQL的管理是用MySQL AB.提供的MySQL-GUI-Tools(免安装版的)。照理说,同一组织的产品,应该是最能兼容的了。但实际用起来很令人失望,MySQL Administrator使用的时候根本没有考虑要支持中文,在它的“Tools>>Options>>General Options>>Application Fonts”的设置中,Code Font中,会设置一个Width的选项,导致在查询分析器中,中文字符的宽度和英文字符一样宽,挤在一起看不清是什么东西。它的查询分析器对有中文的语句语法显示不正常,而且还会出现乱码的情况,最坏的情况莫过于程序会死掉,自动关闭。
相信在以后的使用中还会有新的心得,到时再聊!
声明: 此文观点不代表本站立场;转载须要保留原文链接;版权疑问请联系我们。