问题是,当我想用俄语字符设置文件名并下载pdf文件时,它不会显示文件名。例如,如果我设置文件名“файл.pdf”并下载它,则下载的文件名将为“_.pdf”。我该如何解决?
答案 0 :(得分:2)
首先,tcpdf::Output
用regexp(tcpdf.php中的str 7538(6.0.059版本))替换filename中的所有非拉丁符号:
$name = preg_replace('/[^a-zA-Z0-9_\.-]/', '', $name);
秒 - basename()
(在7602 str开关)。您可以使用setlocale()
正确使用此功能;
最后:您必须使自己的类扩展TCPDF
,覆盖Output()
,通过以下内容更改正则表达式:[^a-zA-Zа-яА-Я0-9_\.-]
并使用setlocale()
& basename()
或您自己的函数for currectly get filename;
class MyTCPDF extends TCPDF {
public function Output($name='doc.pdf', $dest='I'){
//copy original code and add changes;
}
}