78模板网测试zblog缓存插件KelSuperCache,发现插件第一次生成是正常的网页,连续刷新几次页面导致乱码如下:
<?php if (!defined('KelSuperCache_ROOT')) die();ob_start('ob_gzhandler');if ((isset($_SERVER['HTTP_IF_NONE_MATCH']) && $_SERVER['HTTP_IF_NONE_MATCH'] == '17eeb4c24fe7c6169279415a65c9e2ed') ||(isset($_SERVER['HTTP_IF_MODIFIED_SINCE']) && strtotime($_SERVER['HTTP_IF_MODIFIED_SINCE']) >= 1652508933)) {http_response_code(304);die;} else {header('Last-Modified: Sat, 14 May 2022 14:15:33');header('Etag: 17eeb4c24fe7c6169279415a65c9e2ed');}header('Content-type: text/html; charset=utf-8');?>? 漰b?? 5糲惀M?诙户m鄱m鄱mN鄱m[佣m壑作鬄?旄"?矏+sUf%^$?~繵?NXb)k1?洯4a??诃ゞ1??愆g砣P聊齚點巒b?鈦T忉??m??籋s|&QU斵髗m樯!嗼??s*W%?閐r抻c搲d|]?3~?k+?.O?这^汇a....
page-14230-乱码index文件地址:https://aiyiliu.lanzout.com/iBrsn04u5rda
php中header头设置空格问题
在输出文件时,一般遇到最多的是乱码问题。主要是编码不统一造成的。
1 、文件保存时使用的编码,在保存时指定。
2 、输出时告诉浏览器使用的编码,在输出时使用header指定。
3、 从数据库中或是文件中插入的字符编码跟文件保存的编码不一致.如文件保存使用utf-8保存,但是插入的编码却是gbk的。
4 、客户前端输入的编码跟文件保存的编码不一致。
主要是以上几种原因导致乱码
在设置header时空格对浏览器的影响也很大,将会导致头部声明失败。
如
$this->output->set_header("Content-Type: text/html; charset=UTF-8");
可以正确冒号与值之间有多个空格,一般是一个或是没有.这时在firefox中看到解析是正确的
firefox解析
Content-Type text/html; charset=UTF-8
而
$this->output->set_header("Content-Type : text/html; charset=UTF-8");
错误:冒号与名称之间有空格,firefox解析成如下,少了编码,导致网页乱码。
Content-Type text/html
根据以上知识,过滤掉空格,就很容易解决插件乱码问题了!
本文链接:http://78moban.cn/post/14230.html
版权声明:站内所有文章皆来自网络转载,只供模板演示使用,并无任何其它意义!