如何在PHP中显示特殊字符?

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (733)

我曾多次看到这个问题,但没有一个好的解决方案。我有以下字符串:

$string = "<p>Résumé</p>";

我想打印或回显字符串,但输出将返回<p>R�sum�</p>。所以我尝试htmlspecialchars()或者htmlentities()哪些输出&lt;p&gt;R&eacute;sum&eacute;&lt;p&gt;和浏览器呈现&lt;p&gt;R&eacute;sum&eacute;&lt;p&gt;。显然,我想要这样做:

我正在使用UTF-8:

header("Content-type: text/html; charset=UTF-8");

我在这里错过了什么?为什么回声和打印输出为任何特殊字符?为了澄清,字符串实际上是存储在数据库中的整个html文件。

提问于
用户回答回答于

为了确保你的服务器能够正确地打印它们,我们使用ISO-8859-1字符集:

<?php
    /*Just for your server-side code*/
    header('Content-Type: text/html; charset=ISO-8859-1');
?>
<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8"><!-- Your HTML file can still use UTF-8-->
        <title>Untitled Document</title>
    </head>
    <body>
        <?= "àè" ?>
    </body>
</html>
用户回答回答于

在HTML开始之前试试这个。

<?php header('Content-Type: text/html; charset=iso-8859-15'); ?>
<!DOCTYPE html>

<html lang="en-US">
<head>

扫码关注云+社区

领取腾讯云代金券