Php strtoupper不';t使用iconv/utf8_解码和FPDF
要将特殊字符打印到FPDF,我可以使用:Php strtoupper不';t使用iconv/utf8_解码和FPDF,php,utf-8,character-encoding,fpdf,Php,Utf 8,Character Encoding,Fpdf,要将特殊字符打印到FPDF,我可以使用: $this->Cell($w2, 15, iconv('UTF-8', 'windows-1252', $text)); 或 但这两种方法都不适用于strotupper。例如: $this->Cell($w2, 15, strtoupper(iconv('UTF-8', 'windows-1252', $text))); $this->Cell($w2, 15, strtoupper(utf8_decode($text))); $t
$this->Cell($w2, 15, iconv('UTF-8', 'windows-1252', $text));
或
但这两种方法都不适用于strotupper。例如:
$this->Cell($w2, 15, strtoupper(iconv('UTF-8', 'windows-1252', $text)));
$this->Cell($w2, 15, strtoupper(utf8_decode($text)));
$this->Cell($w2, 15, iconv('UTF-8', 'windows-1252', strtoupper($text)));
$this->Cell($w2, 15, utf8_decode(strtoupper($text)));
鉴于:
$text = "Conformità";
所有这些都返回:
一致性
而不是:
因循守旧
更新
此处或其他答案中提出的解决方案不起作用:
mb_strtoupper($text);
mb_strtoupper($text, 'UTF-8');
印刷品
符合À
您需要使用函数的多字节版本,
mb\u strtoupper()
请参阅PHP文档:您需要使用函数的多字节版本,
mb\u strtoupper()
请参阅PHP文档:Nope<代码>mb_strotupper($text)代码>甚至
mb_strotupper($text,'UTF-8')代码>打印CONFORMIT€
。当然,我的字体包含这个字符。不<代码>mb_strotupper($text)代码>甚至mb_strotupper($text,'UTF-8')代码>打印CONFORMIT€
。当然,我的字体包含该字符。@Jeto,如注释中所述,链接答案所产生的解决方案不起作用。但似乎不起作用?它可能不起作用,因为您的字符集已损坏-它需要在整个应用程序中设置,最好是在不切换字符集的情况下设置为相同的字符集。我建议UTF8,如果你可以在任何地方使用。读取@Mark I投票重新打开。@Mark我已在本地进行测试,并输出正确结果。您可以试试。@Jeto,正如在评论中所说的,链接答案所产生的解决方案不起作用。但似乎是这样吗?它可能不起作用,因为您的字符集已损坏-需要在整个应用程序中设置它,最好是在不切换字符集的情况下设置为相同。我建议UTF8,如果你可以在任何地方使用。读取@Mark I投票重新打开。@Mark我已在本地进行测试,并输出正确结果。你可以试试。
mb_strtoupper($text);
mb_strtoupper($text, 'UTF-8');
echo strtoupper($text); //CONFORMITà
echo mb_strtoupper($text); //CONFORMITÀ