让 PHP pathinfo() 返回正确的文件名,如果该文件名是 UTF-8


大多数 PHP 核心函数除了 Latin-1 之外不处理字符集。但在使用 'pathinfo' 之前,可以使用 'setlocale' 来返回正确的文件名,即使该文件名是 UTF-8 编码的。

默认情况下,它使用 'C' 区域设置运行,而 CLI 脚本使用默认的 utf-8 区域设置运行。在调用其他函数之前,服务器上的区域设置应该从 'C' 更改为 'C.UTF-8' 或 'en_US.UTF-8'。

setlocale(LC_ALL,'en_US.UTF-8');
pathinfo($OriginalName, PATHINFO_FILENAME);
pathinfo($OriginalName, PATHINFO_BASENAME);

更新于: 2020-04-09

225 次浏览

开启您的 职业

通过完成课程获得认证

开始
广告