<?php
$conn=mysql_connect("localhost","root","123456");
mysql_select_db("db_bcty365",$conn);
mysql_query("set names gb2312");
?>
其中:
SET NAMES ‘x‘语句与这三个语句等价:
mysql> SET character_set_client = x;
mysql> SET character_set_results = x;
mysql> SET character_set_connection = x;
是用来设置客户端的字符集的,与服务器端的字符集无关,应该说msyql服务器端存储的字符是一定的。
一般我们在设置数据库字符集的时候,都是用mysql_query('set names utf8')这样来处理,但其实这样处理的不全,像discuz等都是采用了全部的操作,它是这样的:mysql_query('character_set_connection=utf8, character_set_results=utf8 character_set_client=binary'),也只有这样,才会比较全面。
从PHP5.2.3开始多了一个函数,它就是:mysql_set_charset,这样才是比较推荐的用法