现在我要做个项目,用ajax+php+mysql的,因为ajax请求都是UTF8编码,而且PHP对json的处理如果出现非utf8编码的中文字就会失败,所以我的php都是以utf8格式保存的。
本以为,采用utf-8格式,就不会出现什么乱码问题,可是它就是乱了,而且乱得可以,header('Content-Type:text/html; charset=utf-8');之类的我也加了,仍然没有任何作用。
哪位高手替我解决下问题,测试网址如下:
http://shice.heliohost.org/test.php
页面代码非常简单<?php
header('Content-Type:text/html; charset=utf-8');
echo '中文';
?>
<br/>
中文
如果是一个html的话,代码中的中文字还是可以直接显示的,可一但是php,就出问题了
php探针:http://shice.heliohost.org/php.php
本以为,采用utf-8格式,就不会出现什么乱码问题,可是它就是乱了,而且乱得可以,header('Content-Type:text/html; charset=utf-8');之类的我也加了,仍然没有任何作用。
哪位高手替我解决下问题,测试网址如下:
http://shice.heliohost.org/test.php
页面代码非常简单<?php
header('Content-Type:text/html; charset=utf-8');
echo '中文';
?>
<br/>
中文
如果是一个html的话,代码中的中文字还是可以直接显示的,可一但是php,就出问题了
php探针:http://shice.heliohost.org/php.php
将这段
header('Content-Type:text/html; charset=utf-8');
echo '中文';
文字的文件默然编码改为utf-8
页面显示时选择编码方式utf-8
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta http-equiv="Content-Language" content="utf-8" />
<title>test</title>
</head>
<body>
<?php
//header('Content-Type:text/html; charset=utf-8');
echo '中文';
?>
<br/>
中文
</body>
</html>
还是乱码
header('Content-Type:text/html; charset=utf-8');
?>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta http-equiv="Content-Language" content="utf-8" />
<title>test</title>
</head>
<body>
<?php
echo '中文';
?>
<br/>
中文
</body>
</html>
而且,这些php在我自己的机子上跑是没有任何乱码问题的
因为你是直接在文件中出现中文,并不是数据库或者其它方式获取到的中文数据。
文件格式:UTF-8
以及UltraEdit15能够保存的N种格式,我都试过了,都不行
如果不信,可以去申请一个免费php空间自己上传一下文件就明白了
http://www.heliohost.org
echo "中文";
但我总不能写一堆这样的 &#xxxxx; 代码吧
用FTP上传时要手动选二进模式
一些笨笨FTP客户端会把文件变ASCII的
Directive Local Value Master Value
allow_call_time_pass_reference On On
allow_url_fopen On On
allow_url_include Off Off
always_populate_raw_post_data Off Off
arg_separator.input & &
arg_separator.output & &
asp_tags Off Off
auto_append_file no value no value
auto_globals_jit On On
auto_prepend_file no value no value
browscap no value no value
default_charset no value no value
default_mimetype text/html text/html
你让你的php配置文件中的default_charset为utf-8试试。
也试过,一样乱码