作者jackcomtw (黄色狮子头)
看板PHP
标题[请益] 请问如何用PHP Detect OS 的编码
时间Mon Sep 9 16:14:42 2013
小弟在做档案上传程式
move_uploaded_file($file_tmp_name,
mb_convert_encoding($pictureTempPath . "\\" .$file_name ,
"Big5"
"UTF-8"));
网页编码固定UTF-8
现在遇到问题,
因为现在用win 开发,以後会上到Linux 主机跑,
我想要用PHP 侦测 目前主机的FileSystem CherSet,不要写死Big5,
找很久都找不到,
试过 mb_internal_encoding() , 她回传ISO-8859-1,而不是big5,
谢谢~
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 210.63.96.2
※ 编辑: jackcomtw 来自: 210.63.96.2 (09/09 16:18)
1F:→ alpe:不要存原始档名, 另外存对应表. 09/09 21:32
2F:→ danny8376:UNIX-like系统的FS是没有charset的 09/10 02:18
3F:→ danny8376:filename都是binary base 不过现在大多的系统也都是 09/10 02:19
4F:→ danny8376:用UTF-8当系统编码就是 09/10 02:20
5F:→ danny8376:主要还是PHP跟FS之间的互动才是重点 09/10 02:26
6F:→ danny8376:像NTFS档名用的是UTF-16 但Windows版PHP操作档案时 09/10 02:27
7F:→ danny8376:函数部分则要看WINDOWS系统 09/10 02:30
8F:→ danny8376:上面UNIX-like的FS部分修正一下 应该说ext家族的FS才对 09/10 02:31
9F:→ danny8376:而linux版的PHP则是用UTF-8去处理档案 09/10 02:32
10F:→ danny8376:所以很简单的来说 只有WIN上的PHP要担心档案编码问题 09/10 02:33
11F:→ danny8376:因为非WIN上的php都是用UTF-8处理 09/10 02:33
12F:→ danny8376:不过最佳方法就同楼上所说的 用对应表的方式最好 09/10 02:33
13F:→ danny8376:还可以避免档名重复 09/10 02:34
14F:→ danny8376:有兴趣可以参考这篇 09/10 02:35
谢谢danny大,
感激不尽
※ 编辑: jackcomtw 来自: 210.63.96.2 (09/10 12:44)