根据视频教程将phpstudy中的编码格式设置为UTF-8,输出中文是正常的,今天再次打开phpstudy,发现输出的中文全是乱码,哪里出问题了,还需要怎么设置吗?
p.s. 当前的编码格式设置如图所示
读者你好:
header("Content-type:text/html;charset=utf-8"); 它的作用就是设置文件编码。但是通常良好的习惯就是保持文件编码格式都为UTF-8, 不用添加这行代码。此外,注意设置浏览器的编码也为unicode(或utf-8)。
了解以上,接下来解释你的困惑。你遇到的情况应该是原先文件编码是gbk. 然后浏览器是自动编码默认为gbk. 所以,虽然你将文件编码为utf-8, 但是浏览器显示的是gbk.所以乱码。而后面,你添加了header("Content-type:text/html;charset=utf-8"); 这样浏览器检测文件是utf-8, 所以又默认改为utf-8,与文件编码一致了。所以显示正常。
当你再新创建文件时,就不需要添加header("Content-type:text/html;charset=utf-8"); 这行了。现在你把原来添加的header("Content-type:text/html;charset=utf-8"); 删除,也会显示正常。
andy 发表于2019-02-28 09:18
读者你好:
header("Content-type:text/html;charset=utf-8"); 它的作用就是设置文件编码。但是通常良好的习惯就是保持文件编码格式都为UTF-8, 不用添加这行代码。此外,注意设置浏览器的编码也为unicode(或utf-8)。
了解以上,接下来解释你的困惑。你遇到的情况应该是原先文件编码是gbk. 然后浏览器是自动编码默认为gbk. 所以,虽然你将文件编码为utf-8, 但是浏览器显示的是gbk.所以乱码。而后面,你添加了header("Content-type:text/html;charset=utf-8"); 这样浏览器检测文件是utf-8, 所以又默认改为utf-8,与文件编码一致了。所以显示正常。
当你再新创建文件时,就不需要添加header("Content-type:text/html;charset=utf-8"); 这行了。现在你把原来添加的header("Content-type:text/html;charset=utf-8"); 删除,也会显示正常。
老师,您好,加上设置文件编码的代码后,中文输出正常,但代码一去掉就又显示不正常。用谷歌浏览器charset修改默认编码格式为UTF-8,但这个设置不是保持的,每次运行都得改一次才能看到正常的中文输出。火狐浏览器里的也一样,每次运行都得改文字编码的设置,很不方便,有没有什么办法让他一直保持UTF-8的设置呢