[请益] Windows 读取含有繁简中及日文档名

楼主: ids93216 (如果)   2015-12-06 21:04:13
大家好
小弟最近想做一个个人用的网络硬盘
目前服务器环境是 Windows Server 2012 繁中 + nginx
想用 PHP 去读 D:\ 里面的档案列表
遇到繁体中文 iconv big5 to UTF-8 没问题
但是日文及简体中文却怎么也读不出来
不知道有没有办法解决呢?
谢谢
作者: threeus (侍衛)   2015-12-07 21:05:00
owncloud, map network drive
作者: rockmanalpha (KIN)   2015-12-07 21:14:00
印象中PHP5.X对Windows Unicode的支援很不足PHP6应该就没这个问题 如果要以PHP5.X来达成可能需要用C语言写一个程式 再用PHP调用来实现
楼主: ids93216 (如果)   2015-12-08 06:56:00
目前是使用PHP7,不知道这问题有没有改善或解决方法呢
作者: rockmanalpha (KIN)   2015-12-08 14:04:00
php7应该没这问题? 可以贴相关几句程式上来看看吗?
作者: yongb (火系见习魔法师 )   2015-12-08 15:07:00
PHP7 跟5.6会差很多吗?
作者: y2468101216 (芸)   2015-12-08 17:14:00
首先PHP没有6,7跟5.6有一定的差距但没有差到要整个打掉重练
作者: rockmanalpha (KIN)   2015-12-08 17:58:00
抱歉 不知道PHP6已经搁置了 当我第二段没说我查了一下当初预想PHP6是要解决Unicode的问题结果花了很多时间最substr($path, 0, -1)后还搁置 所以7好像也没有解决的样子 有一个叫php-wfio的php extension好像就是来解决Windows环境下PHP处理含有Unicode档名的问题但他是以PHP5.X为基础开发 不过作者有试着支援PHP7Github上有他对PHP7的修改版的Commit 使用Windows的PHP7.0 RC2测试好像也没问题 原PO可以去看看可以试着用他的Source 然后把.C换成他修改过后的再用像Visual Studio的工具试着编译DLL 我看到他有config.w32http://tinyurl.com/3f3zyvu 这边有把php的source编译成DLL的教学 其他PHP的套件编译也是差不多原理可以参考一下不客气 你也帮忙作者找到未知的BUG 做福广大PHP使用者 话说作者手脚很快 已经做了fix 等下个Release吧另外看来PHP7的版本也不远了
作者: see7di (see7di)   2015-12-18 23:02:00
你看一下mb_相关的函数吧,很简单的小问题

Links booklink

Contact Us: admin [ a t ] ucptt.com