php怎么设置编码

来源:百度知道 编辑:UC知道 时间:2024/06/23 18:31:47
我的php文件如下:
<?php
$host='127.0.0.1';
$name="root";
$pwd="";
$db="lnncnncl_1";
$conn=mysql_connect($host,$name,$pwd) or die("kao!");
$flag=mysql_select_db($db,$conn);
$result = mysql_query("SELECT * FROM sdb_articles WHERE article_id=1");
$res=mysql_fetch_array($result);
echo $res[title];
?>
输出的是几个问号(跟乱码差不多性质),title字段里面是中文的数据,我的数据库用utf8编码的,现在想让上面的代码输出正常的中文,怎么修改呢?

<?PHP
mysql_connect("localhost","root","");//连接数据库 三个参数,web服务器、 数据库账号及密码。\

mysql_select_db("lyb");//选择数据库
mysql_query("set names gb2312") //设置传输使用gb2312字符集防止乱码。
?>

加上 mysql_query("set names gb2312") //设置传输使用gb2312字符集防止乱码。

header("Content-type: text/html; charset=utf-8");
另外你的编辑器编码也要对应哦

a. 如果欲使用gb2312编码,那么php要输出头:header(“Content-Type: text/html; charset=gb2312"),静态页面添加<meta http-equiv="Content-Type" content="text/html; charset=gb2312">,所有文件的编码格式为ANSI,可用记事本打开,另存为选择编码为ANSI,覆盖源文件。
  b. 如果欲使用utf-8编码,那么php要输出头 :header(“Content-Type: text/html; charset=utf-8"),静态页面添加<meta http-equiv="Content-Type" content="text/html; charset=utf-8">,所有文件的编码格式为utf-8。

  最近需要用到iconv函数把抓取来过的utf-8编码的页面转成gb2312, 发现只有用iconv函数把抓取过来的数据一转码数据就会无缘无故的少一些。 让我郁闷了好一会儿,去网上一查资料才知道这是iconv函数的一个bug。iconv在转换字符&