无法使用泰语字符文件名保存文件

时间:2018-01-28 05:05:05

标签: php

我目前正在尝试使用mPDF库保存pdf文件。我的问题是,当我尝试使用英文文件名输出文件时,文件名显示正确,但如果文件名包含任何泰语字符,则会变得很奇怪。

我的mPDF输出代码。

$save_file = $s_code.'_'.$classroom.'.pdf';
$mpdf->Output('../../../upload/'.$save_file,'F');

使用英文文件名时,它显示正确。

t10024_201.pdf

使用泰语字符时不会。

เธ—เธช10024_201.pdf

我无法弄清楚导致问题的原因。

2 个答案:

答案 0 :(得分:0)

文件名仅限于设备支持的字符集(在本例中,mpdf生成pdf的服务器),并且实际上并不反映mpdf本身的问题。 [如果您可以在pdf中添加/写入泰语字符,则文件名不会反映泰语字符]。

您可能需要使用PDF文件为网络服务器的响应配置Content-Disposition headers。例如,请参阅此blog post that describes how a ColdFusion application developer dealt with saving files with French characters

答案 1 :(得分:0)

非常感谢你,Anson W Han。 这是关于字符编码。我终于找到了解决方案。我只是使用“iconv”将文件名转换为泰语编码,并且显示正确。

代码:

$mpdf->Output('../../../upload/'.iconv("UTF-8", "TIS-620",$save_file),'F');