MySQL,PHP中的编码格式(ZendFramwork)

一:

为了更好的支持中文字符,在MySQL中建表时,应使用utf8的字符集

CREATE TABLE IF NOT EXISTS `user` (
  `userid` int(11) NOT NULL AUTO_INCREMENT,
  `username` varchar(16) COLLATE utf8_bin NOT NULL,
  `password` char(200) COLLATE utf8_bin NOT NULL,
  `sex` char(6) COLLATE utf8_bin NOT NULL DEFAULT 'man',
  `email` varchar(40) COLLATE utf8_bin NOT NULL,
  `organization` varchar(100) COLLATE utf8_bin NOT NULL,
  `type` tinyint(4) NOT NULL DEFAULT '1',
  `actNum` varchar(20) COLLATE utf8_bin DEFAULT NULL,
  `userlevel` tinyint(4) DEFAULT NULL,
  `signupate` varchar(20) COLLATE utf8_bin DEFAULT NULL,
  `lastlogin` varchar(20) COLLATE utf8_bin DEFAULT NULL,
  `lastloginFail` varchar(20) COLLATE utf8_bin DEFAULT NULL,
  `numloginfail` tinyint(4) DEFAULT NULL,
  PRIMARY KEY (`userid`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin AUTO_INCREMENT=1 ;

二:

打开Zend studio后,在window中的preference中设置网页编码(encoding )为utf-8,点击General下的Workspace. 在右侧的Text file encoding中选择other,找到utf-8.如下图所示:

MySQL,PHP中的编码格式(ZendFramwork)_第1张图片

三:

在每个.phtml文件头部添加:

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

四:

设置数据库连接时的字符集:

$db=Zend_Db::factory($cfg->db->adapter,$cfg->db->config->toArray());
$db->query("SET NAMES'utf8'");


大功告成,这样,数据库中的字符,网页中的字符,和文件中的字符完全一致了。

你可能感兴趣的:(MySQL,PHP中的编码格式(ZendFramwork))