您好,朋友。您是否使用的织梦utf-8版本的!
如果是utf-8的话可能是bom的原因,首先将下面代码复制,然后命名为任意php文件,放到根目录执行。代码如下:
<?php
//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 ";
echo 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);
}
?先尝试一下,希望我的回答能够帮到您!
追问执行这个之后 页面提示:
Parse error: syntax error, unexpected '?' in /webHome/host5536393/www/kongbai.php on line 56
追答sorry刚才写的时候少一个闭合,在最后 ?后加一个> 闭合。
追问
麻烦您帮我看一下这是?
追答一些模板文件和css中有bom,清除完成后,生成下首页看看是否好了!
追问我试行了您给我发的这个文件,然后重新生成了一下主页,但是还是空白的,好伤心
追答你再运行这个文件看下是否还有红色bom显示,如果显示的话还是没有清除掉。可能你的权限设置有问题哦
追问貌似不是这个的问题啦,我发现我生成的静态页面一直没有成功,生成的HTML文件一直都是0B,也不知道时什么原因 ,麻烦您了