phputf8转中文
❶ php mysql 如何将从数据中读入的中文乱码转换成中文字符
要解决乱码首先需要知道出现乱码的原因:
一、PHP+MySQL出现中文乱码的原因。
1. MYSQL数据库的编码是utf8,与PHP网页的编码格式不一致,就会造成MYSQL中的中文乱码。
2. 使用MYSQL中创建表、或者选择字段时设置的类型不是utf8,而网页编码不是utf8,也可能造成MYSQL中文乱码.
3. PHP页面的字符集与数据库的编码不一致。
4. PHP连接MYSQL数据库,操作是设定的语句指定的编码和页面编码,PHP页面编码不一致。
5. 用户提交的HTML页面编码,和显示数据的页面编码不一致 ,就肯定会造成PHP页面乱码.
二、解决中文乱码:
1. 网页编码设置。一般在HTML代码中的文件头<html>中加入属性:
<meta http-equiv=”Content-Type” content=”text/html; charset=utf-8″>
保证,网页是"utf-8"编码。
2. PHP代码设置。在php代码的开始部分加入以下代码:
header(”Content-type: text/html;charset=utf-8″);
且要求保存的文件编码方式是utf-8,这样就保证了该文件也是utf-8编码。
3. 数据库中表的字段中存储中文的部分,要设置为utf8_general_ci类型。
4.PHP在连接数据库操作时,要设置操作的字段类型为utf8,设置方法如下:
mysql_connect(’localhost’,'user’,'password’);mysql_select_db(’db’);mysql_query(”set names utf8;”); //**设置字符集***
❷ php怎样把utf8转换为gbk
<?php@header("Content-type:text/html;charset=UTF-8");echo $str= '你好,这里是卖咖啡!';echo '<br />';echo iconv("UTF-8","gbk//TRANSLIT",$str);; //将字符串的编码从UTF-8转到GB2312
echo '<br />';echo iconv_substr($str, 1, 1, 'UTF-8'); //按字符个数截取而非字节print_r(iconv_get_encoding()); //得到当前页面编码信息echo iconv_strlen($str, 'UTF-8'); //得到设定编码的字符串长度?>
❸ 在PHP中,怎样将编码为UTF8的汉字转换为gbk编码的汉字
数据库连接后
mysql_query("SET NAMES 'gb2312'");
直接自动转换了
❹ php中用utf8编码输出中文就是乱码
header("Content-Type: text/html; charset=utf-8");
可以省略,因为在meta已经定义了。
乱码的原因是保存文件时,文件的编码与显示编码不一致,只要另存为一次就好了
❺ php里面怎样把utf-8编码的字符串 (如 \u5e7f), 重新解码成中文,多谢
这种字符串是unicode编码的,而不是utf-8。json_decode()可以自动将json中的unicode字符串转换为utf-8。你可以自己构造一个json来实现。
12345<?php$str = '\u5e7f\u4e1c\u6df1\u5733';$json = '{"foo":"' . $str . '"}';$d = json_decode($json, true);$str = $d['foo']; // 这个就是你想要的
望采纳!
❻ 如何解决PHP在utf-8编码下中文显示乱码问题
如果php文件已经在头部设置编码格式为utf-8,在运行的时候还出现乱码问题,可能是由于文件编码格式不匹配或者头部有bom信息输出导致乱码。解决办法:
设置保存文件编码格式为utf-8;
去掉文件头部bom信息;
❼ PHP中如何将UTF-8字符串转成汉字
楼主说的这个不是utf-8,这是URL字符串
可以用urldecode()这个函数解码已编码的 URL 字符串
urldecode('%E5%BC%A0%E8%80%81%E5%B8%88');
❽ 如何用PHP将JAVASCRIPT的UTF-8转义字符转换成汉字
有转换字符编码的函数啊。
$text=iconv("GB2312","UTF-8",$text);例如这样。
不过不知道你的文件编码是什么。