- UID
- 1160673
- 在线时间
- 0 小时
- 最后登录
- 2015-10-25
- 注册时间
- 2015-10-6
- 宅魂
- 112 点
- 贡献
- 22 点
- 宅币
- 858 枚
- 宅の石(入宅度)
- 0 块
- 元气(技能点)
- 1 点
- 活跃
- 0 ℃
- 听众
- 6
- 收听
- 0
该用户从未签到
Continue
- 积分
- 1310
|
问题:1.白边由php隐藏字符#65279引起(chrome浏览器f12可看到);
2.ajax状态为200,却执行error;
原因:两者原因都是php utf_8 格式bom头引起的;
用notepad++以无bom格式保存view中的html文件不起作用;
方法:在入口文件index.php中插入代码:
[mw_shl_code=php,true]//remove the utf-8 boms
//by magicbug at gmail dot com
if (isset($_GET['dir'])){ //config the basedir
$basedir=$_GET['dir'];
}else{
$basedir = '.';
}
$auto = 1;
checkdir($basedir);
function checkdir($basedir){
if ($dh = opendir($basedir)) {
while (($file = readdir($dh)) !== false) {
if ($file != '.' && $file != '..'){
if (!is_dir($basedir."/".$file)) {
echo "filename
$basedir/$file ".checkBOM("$basedir/$file")." <br>";
}else{
$dirname = $basedir."/".$file;
checkdir($dirname);
}
}
}
closedir($dh);
}
}
function checkBOM ($filename) {
global $auto;
$contents = file_get_contents($filename);
$charset[1] = substr($contents, 0, 1);
$charset[2] = substr($contents, 1, 1);
$charset[3] = substr($contents, 2, 1);
if (ord($charset[1]) == 239 && ord($charset[2]) == 187 && ord($charset[3]) == 191) {
if ($auto == 1) {
$rest = substr($contents, 3);
rewrite ($filename, $rest);
return ("<font color=red>BOM found, automatically removed.</font>");
} else {
return ("<font color=red>BOM found.</font>");
}
}
else return ("BOM Not Found.");
}
function rewrite ($filename, $data) {
$filenum = fopen($filename, "w");
flock($filenum, LOCK_EX);
fwrite($filenum, $data);
fclose($filenum);
}[/mw_shl_code]
然后浏览器执行;
最后删除代码;
相关地址 |
|