作者eliang ()
看板PHP
標題[請益] Ultraedit 編輯 UTF8 php 檔的問題
時間Fri Apr 28 13:20:17 2006
我在 Ultraedit 打入下面程式碼:
<?php
session_start();
?>
(一共三行, <?php 前完全沒有任何空白或換行)
然後點選功能表: 檔案 / 轉換 / ASCII 轉 UTF-8
儲存成 .php 檔,
執行後會出現錯誤訊息:
Warning: session_start() [function.session-start]: Cannot send session cookie
- headers already sent by (output started at
E:\web\xxx.php:1) in E:\web\xxx.php on line 2
我換用 Dreamweaver 編輯就不會有這樣的問題,
後來我在網路上查詢後, 發現是 Ultraedit 在編輯 utf-8 的檔案時,
會在檔案的最前面偷偷加上 BOM 控制字元, 而 PHP 不認得這種控制字元,
就把它當作是一般字元輸出, 造成之後的 header functions 無法使用,
本來想說將 BOM 關掉就好了, 不過我的 Ultraedit 是 10.10 版,
竟然找不到 BOM 的相關選項, 請問除了換編輯器之外,
有沒有人知道其他解決方法? 謝謝!
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 220.132.133.199
1F:推 alpe:去找一下UE的設定... 有一個檔案要改 04/28 13:53
2F:→ tonytsai88:我用的是 10.20 版,轉 UTF-8 沒有問題 04/28 20:02
3F:推 mkjplayer:UTF-8用session_start()前面要加上"@" 04/29 18:04
4F:→ mkjplayer:變成@session_start(); @是指忽略錯誤 04/29 18:04
5F:→ huenlil:存檔時選擇存成沒有BOM的UTF8 04/29 21:46