经过过测试:
mysqli_query(“set nams utf8”)必须在所有语句的执行之前,否则会返回FALSE。
看手册,说不建议用mysqli_query来设置编码,用mysqli_set_charset,但如果用这个方法有要求:如果在Windows平台上使用该方法,需要4.1.11版或以上的MySQL客户端库,且MySQL版本为5.0.6以上。
MySQL客户端库 与 MySQL版本有什么区别,我到还没弄清楚。
utf8不能写成utf-8,,因为MySQL的命令模式中只能识别“utf8”,不能识别“utf-8”;但是在PHP中header时却要加上“-”,因为IE不认识没杠的“utf8”。
”UTF-8”才是标准写法,在Windows下边英文不区分大小写,所以也可以写成”utf-8”。最好按标准写,写成大写。