解决 PHP Mysql 和 UTF8的问题
来源:互联网 发布:cacti有数据不出图 编辑:程序博客网 时间:2024/06/05 04:42
http://sixpoint.me/443/solving-php-mysql-utf8-issue/
1. 数据库
CREATE
DATABASE
db_name
CHARACTER
SET
utf8
DEFAULT
CHARACTER
SET
utf8
COLLATE
utf8_general_ci
DEFAULT
COLLATE
utf8_general_ci
;
如果数据库已经存在
ALTER
DATABASE
sb_name
CHARACTER
SET
utf8
DEFAULT
CHARACTER
SET
utf8
COLLATE
utf8_general_ci
DEFAULT
COLLATE
utf8_general_ci
;
建表
CREATE
TABLE
table_name(
...
)
DEFAULT
CHARACTER
SET
utf8
COLLATE
utf8_general_ci
;
如果表已经存在
ALTER
TABLE
tbl_name
DEFAULT
CHARACTER
SET
utf8
COLLATE
utf8_general_ci
;
2. 在 php.ini 里面启用
extension=php_mbstring.dll
同时进行如下配置
mbstring.language = Neutral
mbstring.internal_encoding = UTF-8
mbstring.encoding_translation = On
mbstring.http_input = auto
mbstring.http_output = UTF-8
mbstring.detect_order = auto
mbstring.substitute_character = none
default_charset = UTF-8
3. 在PHP中使用下面替代的function
mail() => mb_send_mail()
strlen
() => mb_strlen()
strpos
() => mb_strpos()
strrpos
() => mb_strrpos()
substr
() => mb_substr()
strtolower
() => mb_strtolower()
strtoupper
() => mb_strtoupper()
substr_count() => mb_substr_count()
ereg
() => mb_ereg()
eregi
() => mb_eregi()
ereg_replace
() => mb_ereg_replace()
eregi_replace
() => mb_eregi_replace()
split() => mb_split()
htmlentities(
$var
) => htmlentities(
$var
, ENT_QUOTES,
'UTF-8'
)
4. 使用如下的 header 和 meta 标记
header(
'Content-type: text/html; charset=UTF-8'
);
<
meta
http-equiv
=
"Content-type"
value
=
"text/html; charset=UTF-8"
/>
5. 在向数据库 insert / update 前需要使用
mysql_set_charset(
"utf8"
);或者mysqli_set_charset($link, "utf8")
;(新版)
- 解决 PHP Mysql 和 UTF8的问题
- php页面和Mysql数据库的转UTF8编码问题
- PHP页面和Mysql数据库的转UTF8编码问题总结
- PHP页面和Mysql数据库的转UTF8编码问题总结
- PHP页面和Mysql数据库的转UTF8编码问题总结
- [PHP]解决PHP和MySQL的中文乱码问题
- hibernate+struts+mysql有关utf8乱码问题的解决。
- MySQL终极配置解决UTF8编码出现的乱码问题
- MySQL终极配置解决UTF8编码出现的乱码问题
- MySQL终极配置解决UTF8编码出现的乱码问题
- MySQL终极配置解决UTF8编码出现的乱码问题
- MySQL字符集 GBK、GB2312、UTF8区别 解决PHP MYSQL中文乱码问题
- 分享MySQL和php採用UTF8的详细方法
- Mysql和PHP采用UTF8的设置详解
- perl 解决mysql utf8中文乱码 问题
- MySQL的中文UTF8问题
- 解决PHP和MYSQL中文乱码问题
- Mysql UTF8 解决乱码
- “no cuda-capable device is detected”问题解决方法
- 《大话设计模式》部分模式总结(二)
- A. Exams
- 你应该知道的10种软件工具
- 用EXCEL完成GPS坐标转换的简易方法
- 解决 PHP Mysql 和 UTF8的问题
- C#归并排序
- 在C++ 程序中调用被C编译器编译后的函数,为什么要加extern “C”?
- Android客户端与PC服务器实现Socket通信
- 免费的项目托管网站
- android中dip、dp、px、sp和屏幕密度
- KiFastCallEntry() 机制分析
- Chrome扩展程序:Remove Google Redirects
- va_list,可变参数的使用