網域名稱俱樂部


返回   網域名稱俱樂部 > 電腦與網路技術 > 電腦網路相關技術

回覆
 
主題工具
  #1  
舊 2006-01-20, 12:58 PM
1paper 1paper 目前離線
進階會員
 
註冊日期: 2005-04-24
文章: 2,155
預設 □<?php

請問各位高手,

我在編輯.php檔案時,發現正常情況下開檔看不見<?php宣告前面的□,可是在比對檔案時卻看到前面的□,這個有□的檔案在網站跑的時候會出現問題。

請問如何解決掉前面的□?

PS.二個檔案不同處在:執行正常的檔案是iso-8859-1編碼,這個有□的檔案是UTF-8編碼,我是用iso這個中文化後轉成UTF-8編碼的。

請大家不吝教導,謝謝。
回覆時引用此篇文章
  #2  
舊 2006-01-20, 07:42 PM
virileman virileman 目前離線
初級會員
 
註冊日期: 2005-08-26
文章: 18
預設

這是因為 UTF-8 編碼檔的 header 中多了 BOM (Byte Order Mark) 識別碼,而這 BOM 常會讓 Apache 誤判,而發生 header already sent 的錯誤

建議用 ConvertZ 來把檔案轉換成 UTF-8,注意,請在 ConvertZ 的設定中找到 "加 BOM 到 UTF8 檔案" [不要勾]

ConvertZ 可由其官方網頁下載到 http://alf-li.pcdiscuss.com/c_convertz.html

或是用 UltraEdit 這編輯器,設定 "將Write UTF-8 BOM header to ALL UTF-8 files
when saved 設成OFF",就不會在儲存時又在檔案中加入 BOM 了

Editplus 這編輯器也有可以設定 EditPlus > Tools > Preferences > Files > Support UTF-8 files without Byte Order Mark(BOM) [勾起來]
回覆時引用此篇文章
  #3  
舊 2006-01-20, 10:59 PM
1paper 1paper 目前離線
進階會員
 
註冊日期: 2005-04-24
文章: 2,155
預設

引用:
作者: virileman
這是因為 UTF-8 編碼檔的 header 中多了 BOM (Byte Order Mark) 識別碼,而這 BOM 常會讓 Apache 誤判,而發生 header already sent 的錯誤

建議用 ConvertZ 來把檔案轉換成 UTF-8,注意,請在 ConvertZ 的設定中找到 "加 BOM 到 UTF8 檔案" [不要勾]

ConvertZ 可由其官方網頁下載到 http://alf-li.pcdiscuss.com/c_convertz.html

或是用 UltraEdit 這編輯器,設定 "將Write UTF-8 BOM header to ALL UTF-8 files
when saved 設成OFF",就不會在儲存時又在檔案中加入 BOM 了

Editplus 這編輯器也有可以設定 EditPlus > Tools > Preferences > Files > Support UTF-8 files without Byte Order Mark(BOM) [勾起來]
謝謝您,終於成功了~~

之前用UltraEdit也取消打勾了,可是沒作用,最後還是用了ConvertZ才成功!

真是太感謝您了~~
回覆時引用此篇文章
  #4  
舊 2006-01-20, 11:24 PM
virileman virileman 目前離線
初級會員
 
註冊日期: 2005-08-26
文章: 18
預設

引用:
作者: 1paper
謝謝您,終於成功了~~

之前用UltraEdit也取消打勾了,可是沒作用,最後還是用了ConvertZ才成功!

真是太感謝您了~~
嘻,恭喜你啊,小弟也曾被這問題絆住過,當時是用 FreeBSD 的 ee(easy editor) 才發現有異狀才去查找相關資料。 ConvertZ 還蠻實用的,小弟曾試過一次轉上千個檔案,或單個檔案 size 超過 100 MB,速度挺快的!推薦好好善用

而 UltraEdit ,本身沒有再用 (平常用 EditPlus),可能該設定是針對 "下次要儲存時,不要寫入 BOM 資訊",所以...
回覆時引用此篇文章
  #5  
舊 2006-01-20, 11:46 PM
imp imp 目前離線
進階會員
 
註冊日期: 2003-02-24
文章: 635
預設

寫網頁我推薦用BBEdit,存檔選UTF-8 no BON即可。
回覆時引用此篇文章
  #6  
舊 2006-01-20, 11:59 PM
1paper 1paper 目前離線
進階會員
 
註冊日期: 2005-04-24
文章: 2,155
預設

我當時無法解決時有想到convertz(版上有大大提過轉碼好用),但是我想說我都已經轉碼成功了,只是多了□,就沒有再進一步試它了。

只是到現在還覺得奇怪,我有把UltraEdit的加入bom取消,怎麼還有囗呢...
回覆時引用此篇文章
  #7  
舊 2006-01-21, 12:07 AM
1paper 1paper 目前離線
進階會員
 
註冊日期: 2005-04-24
文章: 2,155
預設

引用:
作者: virileman
嘻,恭喜你啊,小弟也曾被這問題絆住過,當時是用 FreeBSD 的 ee(easy editor) 才發現有異狀才去查找相關資料。 ConvertZ 還蠻實用的,小弟曾試過一次轉上千個檔案,或單個檔案 size 超過 100 MB,速度挺快的!推薦好好善用

而 UltraEdit ,本身沒有再用 (平常用 EditPlus),可能該設定是針對 "下次要儲存時,不要寫入 BOM 資訊",所以...
謝謝你 ,若沒你再提一次,我可能不知要弄到何時才會想到回頭試ConvertZ。
回覆時引用此篇文章
回覆

主題工具

發文規則
不可以發表新主題
不可以發表回覆
不可以上傳附件
不可以編輯自己的文章

啟用 BB 代碼
論壇啟用 表情符號
論壇啟用 [IMG] 代碼
論壇禁用 HTML 代碼



所有時間均為 +8。現在的時間是 05:07 PM


本站主機由網易虛擬主機代管
Powered by vBulletin® 版本 3.8.4
版權所有 ©2000 - 2024,Jelsoft Enterprises Ltd.