星期五, 五月 22, 2009

PHP 在 Windows Vista 開 中文名稱 資料夾 該用何種編碼

在 Windows Vista(XP 應該也是一樣), 然後 LAMP 是 Appserv, 要開中文名稱的資料夾, 會出現下述錯誤:

Warning: mkdir() [function.mkdir]: Invalid argument in C:\AppServ\www\test\mkdir.php on line 3

猜想應該是編碼問題, 只是到底要用什麼編碼? UNICODE? UTF-16? UTF-8? Big5? cp950?

答案是編碼問題沒錯, 在 Windows 裡面, 目錄編碼還是用 Big5 或 cp950.

程式範例

<?php
$dir_name = '中文';
$dir_name = mb_convert_encoding($dir_name, 'big5', 'UTF-8');
var_dump(mkdir($dir_name));
?>

相關標籤

this is comment icon 罕見字如何處理,例如方方土 [回覆]

罕見字如何處理,例如方方土

Comment by ford (06/08/2009 09:17)

this is comment icon 回 ford [回覆]

先確定 Windows 上, 這個字的資料夾能建立.
然後 把 big5 改成 cp950, 會解決比較多的罕見字問題, 建議盡量少用中文當檔名會比較好.

Comment by Tsung (06/08/2009 11:08)
Add this page to del.icio.us

發表迴響

標題

內容 (限制 1000 字)

暱稱

電子郵件

個人網頁


 authimage


PS: 若無法留言, 請先確認是否有打開 JavaScript, 造成您的困擾, 實在萬分對不起 Orz...(如果無法留言, 勞煩可以發信給我好嗎? 謝謝.)
PS2: 若您的留言被誤判, 我都會再自行看過, 不需要一直重覆張貼~