幾個(gè)常出現(xiàn)的問(wèn)題:
1.網(wǎng)站打開(kāi)空白
2.頁(yè)面頭部出現(xiàn)多余的空白
3.網(wǎng)站出現(xiàn)亂碼,如“锘?”
4.后臺(tái)登錄驗(yàn)證碼不顯示
解決方案:
1.選用專(zhuān)業(yè)的編輯器,例如notepad++,sublime,editplus這樣不會(huì)自動(dòng)簽名。
2.sublime通過(guò)如下操作File -> Save with Encoding -> UTF-8保存后即可去除bom
3.notepad++選中格式 -> 以UTF-8格式編碼 選項(xiàng)即可去除
4.用如下方法可一次性清理網(wǎng)頁(yè)所有文本文件的bom
復(fù)制下面代碼
<?php
$dir=dirname(__FILE__);
if(isset($_GET["act"]) && $_GET["act"] == "del" ){ //Del the file!!
$filename=basename($_SERVER['PHP_SELF']);
@unlink($filename);
exit('Error:File Not Found!');
}
echo "The document:".$dir." <a href="?act=del" >[Del the delbom.php file]</a><BR/>";
if (!is_dir($dir))
die("$dir not exists");
$auto = 1;
checkdir($dir);
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/>n";
}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>n");
} else {
return ("<font color=red>BOM found.</font>n");
}
}
else return ("BOM Not Found.n");
}
function rewrite ($filename, $data) {
$filenum = fopen($filename, "w");
flock($filenum, LOCK_EX);
fwrite($filenum, $data);
fclose($filenum);
}
?>
復(fù)制上面的代碼
使用方法:復(fù)制上面代碼到一個(gè)新建的delbom.php(用記事本或者是文本編輯器打開(kāi)此文件)的文件中,上傳到網(wǎng)站根目錄,然后訪問(wèn)您的站點(diǎn),比如http://www.**.com/delbom.php 即可清理所有網(wǎng)頁(yè)中存在的bom便簽。