我正在做一个进行大量路径名操作的项目。它在 Mac OS X 上运行良好,但令我惊讶的是,在 Windows 上无法使用 utf-8 编码字符串调用realpath之类的函数。这是因为Windows 上的setlocale不支持 utf-8:
http://msdn.microsoft.com/en-us/library/x99tb11d.aspx
http://www.phpwact.org/php/i18n/utf-8
我可以制作在内部调用utf8_encode和 utf8_decode的包装函数,但是 php 中有太多的文件函数,这给我带来了很大的负担。
此外,该项目是开源的,因此当用户尝试在自己的代码中使用我的字符串(都是 utf-8 以面向网络)来读/写文件时,他们可能会认为它是破坏性的。
是否有提供主要 php 文件功能的 utf-8 版本的库?我更喜欢一个独立的目录而不是扩展,这样我就可以将它与我的代码捆绑在一起。
我担心如果找不到这样的库,可能是致命弱点导致 php 不适合我的跨平台开发。我也很好奇 ruby、python 和 c++ 等其他语言如何解决这个问题,如果他们这样做的话。如果没有,这可能只是对 Windows 的又一次打击,我将不得不找出另一种解决方法。