當前位置:首頁 » 編程語言 » php去掉bom

php去掉bom

發布時間: 2022-06-11 23:41:55

❶ 如何查看php代碼中是否又bom

網上有示例的

<?php
/*檢測並清除BOM*/
if(isset($_GET['dir'])){
$basedir=$_GET['dir'];
}else{
$basedir='.';
}
$auto=1;
checkdir($basedir);
functioncheckdir($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);
}
}
}//endwhile
closedir($dh);
}//endif($dh
}//endfunction
functioncheckBOM($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"<fontcolor=red>BOMfound,automaticallyremoved.</font>";
}else{
return("<fontcolor=red>BOMfound.</font>");
}
}
elsereturn("BOMNotFound.");
}//endfunction
functionrewrite($filename,$data){
$filenum=fopen($filename,"w");
flock($filenum,LOCK_EX);
fwrite($filenum,$data);
fclose($filenum);
}//endfunction
?>

❷ UTF-8編碼怎麼去掉BOM頭

方法一:用Ultraedit或Editplus打開PHP文件,另存為無Bom的utf-8文件方法二:用Dreamweaver去除Bom頭 菜單–修改–頁面屬性 或者ctrl+j打開頁面屬性窗口,點尋標題/編碼」去掉「包括Unicode簽名Bom」前的勾 有Bom的文件太多?這樣太麻煩...

❸ php 如何刪除文件裡面的bom

<?php
//此文件用於快速測試UTF8編碼的文件是不是加了BOM,並可自動移除

$basedir="."; //修改此行為需要檢測的目錄,點表示當前目錄
$auto=1; //是否自動移除發現的BOM信息。1為是,0為否。

//以下不用改動

if ($dh = opendir($basedir)) {
while (($file = readdir($dh)) !== false) {
if ($file!='.' && $file!='..' && !is_dir($basedir."/".$file)) echo "filename: $file ".checkBOM("$basedir/$file")." <br>";
}
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);
}
?>

❹ phpstorm如何去除bom

用Ultraedit或Editplus打開PHP文件,另存為無Bom的utf-8文件

❺ php讀取文件時多了個%ufeff,怎樣去掉

這是一個文件BOM頭,是用來聲明UTF-8的,

做法有兩種,

1、那個文件在保存的時候選擇UTF-8無BOM,或者一些編輯器做去除BOM處理。
2、就是通過PHP,過濾掉BOM。

❻ 如何去掉BOM頭

去掉bom頭的辦法,簡單的是下面兩種:

1、editplus去BOM頭的方法

編輯器調整為UTF8編碼格式後,保存的文件前面會多出一串隱藏的字元(也即是BOM),用於編輯器識別這個文件是否是以UTF8編碼。

運行Editplus,點擊工具,選擇首選項,選中文件,UTF-8標識選擇 總是刪除簽名,

然後對PHP文件編輯和保存後的PHP文件就是不帶BOM的了。

2、ultraedit去除bom頭辦法

打開文件後,另存為選項的編碼格式里選擇(utf-8 無bom頭),確定就ok了

❼ thinkphp echo回的頁面如何去掉BOM頭

echostr那個只是驗證URL的,原樣輸出就可以了,還有,你可以用編輯器去除BOM頭信息,不知道你的編輯器是那種的,可否告知,把index.php入口文件的BOM用編輯器清除一下,還望貼出代碼,方面尋找問題所在

❽ html編輯器如何去掉bom字元

先來看看什麼是bom頭?
在utf-8編碼文件中BOM在文件頭部,佔用三個位元組,用來標示該文件屬於utf-8編碼,現在已經有很多軟體識別bom頭,但是還有些不能識別bom頭,比如PHP就不能識別bom頭,這也是用記事本編輯utf-8編碼後執行就會出錯的原因了。
去掉bom頭的辦法,簡單的是下面兩種:
1、editplus去BOM頭的方法
編輯器調整為UTF8編碼格式後,保存的文件前面會多出一串隱藏的字元(也即是BOM),用於編輯器識別這個文件是否是以UTF8編碼。 運行Editplus,點擊工具,選擇首選項,選中文件,UTF-8標識選擇 總是刪除簽名,
然後對PHP文件編輯和保存後的PHP文件就是不帶BOM的了。
2、ultraedit去除bom頭辦法
打開文件後,另存為選項的編碼格式里選擇(utf-8 無bom頭),確定就ok了
怎麼樣,去掉bom頭很簡單吧
3、專門寫的去除文件BOM頭的程序,現在公布出來,可以放在項目根目錄,然後運行。

Php代碼,請使用工具條復制代碼
view sourceprintabout
01
<?php
02
if (isset($_GET['dir'])){ //設置文件目錄
03
$basedir=$_GET['dir'];
04
}else{
05
$basedir = '.';
06
}
07
$auto = 1;
08
checkdir($basedir);
09
function checkdir($basedir){
10
if ($dh = opendir($basedir)) {
11
while (($file = readdir($dh)) !== false) {
12
if ($file != '.' && $file != '..'){
13
if (!is_dir($basedir."/".$file)) {
14
echo "filename: $basedir/$file ".checkBOM("$basedir/$file")." <br>";
15
}else{
16
$dirname = $basedir."/".$file;
17
checkdir($dirname);
18
}
19
}
20
}
21
closedir($dh);
22
}
23
}
24
function checkBOM ($filename) {
25
global $auto;
26
$contents = file_get_contents($filename);
27
$charset[1] = substr($contents, 0, 1);
28
$charset[2] = substr($contents, 1, 1);
29
$charset[3] = substr($contents, 2, 1);
30
if (ord($charset[1]) == 239 && ord($charset[2]) == 187 && ord($charset[3]) == 191) {
31
if ($auto == 1) {
32
$rest = substr($contents, 3);
33
rewrite ($filename, $rest);
34
return ("<font color=red>BOM found, automatically removed._<a href=http://blog.csdn.net/s394032675>csdn.net</a></font>");
35
} else {
36
return ("<font color=red>BOM found.</font>");
37
}
38
}
39
else return ("BOM Not Found.");
40
}
41
function rewrite ($filename, $data) {
42
$filenum = fopen($filename, "w");
43
flock($filenum, LOCK_EX);
44
fwrite($filenum, $data);
45
fclose($filenum);
46
}
47
?>

好了,以上就是去掉bom頭的一些方法,其實做php的時候不建議用記事本的,最好是用一些專業的ide,這樣能防止以上的一些小錯誤,來提高我們的編碼效率和質量!

❾ phpstorm9.0 怎樣無bom保存

方法一:用Ultraedit或Editplus打開PHP文件,另存為無Bom的utf-8文件方法二:用Dreamweaver去除Bom頭
菜單–修改–頁面屬性 或者ctrl+j打開頁面屬性窗口,點選「標題/編碼」去掉「包括Unicode簽名Bom」前的勾
有Bom的文件太多?這樣太麻煩?當然有更好的方法!方法三:用php文件批量去除bom頭 將以下這段代碼保存為php文件,上傳到伺服器,用瀏覽器訪問它!<?phpif (isset($_GET['dir'])){ //設置文件目錄
$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). ;}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=redBOM found, automatically removed.</font);} else {return (<font color=redBOM found.</font);}}else return (BOM Not Found.);}function rewrite ($filename, $data) {
$filenum = fopen($filename, w);
flock($filenum, LOCK_EX);
fclose($filenum);}?還用記事本保存?那你真是智商捉急了!

❿ php無bom和有bom的文件編碼有什麼區別

2、關於BOM:

為了識別 Unicode 文件,Microsoft 建議所有的 Unicode 文件應該以 ZERO WIDTH NOBREAK SPACE(U+FEFF)字元開頭。這作為一個「特徵符」或「位元組順序標記(byte-order mark,BOM)」來識別文件中使用的編碼和位元組順序。

Linux/UNIX 並沒有使用 BOM,因為它會破壞現有的 ASCII 文件的語法約定。 (-- 這就是導致這次頁面出現空白行的原因)

dom不是好東西就是一個數據簽名,一串字元串而已,經常導致頁面出現空白行,特別是PHP進行文件引入require_once和include的時候

熱點內容
愛思助手如何看配置 發布:2025-02-07 17:32:27 瀏覽:175
自己的電腦怎麼搭建手游伺服器端 發布:2025-02-07 17:21:44 瀏覽:47
怎樣修改蘋果密碼怎麼辦 發布:2025-02-07 17:15:44 瀏覽:716
電腦一般怎麼連接伺服器 發布:2025-02-07 17:12:55 瀏覽:491
ftp用ie打開文件 發布:2025-02-07 17:07:42 瀏覽:271
android列表顯示 發布:2025-02-07 17:01:19 瀏覽:66
芒果tv緩存的視頻在哪個文件里 發布:2025-02-07 16:45:05 瀏覽:817
php郵件群發 發布:2025-02-07 16:45:05 瀏覽:615
mysql資料庫基本語句 發布:2025-02-07 16:41:48 瀏覽:253
醫院門禁密碼多少 發布:2025-02-07 16:41:43 瀏覽:530