我在 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
推
04/28 13:53, , 1F
04/28 13:53, 1F
→
04/28 20:02, , 2F
04/28 20:02, 2F
推
04/29 18:04, , 3F
04/29 18:04, 3F
→
04/29 18:04, , 4F
04/29 18:04, 4F
→
04/29 21:46, , 5F
04/29 21:46, 5F