PHP: 入库后转换的文本
PHP: Text transformed after being put in database
我有一个表单将数据发送到 mySQL 数据库。但是当我输入像 "Jack&Jones" 这样的文本时,特殊字符会转换为 HTML 特殊字符(此处,& 变为“&
”)。
此数据库中插入的数据稍后可用于使用模板生成 Word 文档,但这些 HTML 个字符被读取错误,生成的文件完全混乱。
我试图通过确保我的所有页面都使用 <meta charset="UTF-8">
标记并使用 header("Content-Type: text/html; charset=utf-8");
来确保数据在整个过程中保持 UTF-8 编码来解决问题,但是它没用。
所以我的问题是:如何确保我的表单、我的数据库和我的word文档之间的编码一致性?
你可以使用
htmlspecialchars($_REQUEST['your_field'], ENT_QUOTES)
用于文本解码
你可以试试这个对你有帮助:
对于解码文本:
htmlspecialchars("Jack&Jones", ENT_QUOTES);
对于如下所示的文本解码,您可以使用以下内容:
<?php
$str = "This is some <b>bold</b> text.";
echo htmlspecialchars_decode($str);
?>
我有一个表单将数据发送到 mySQL 数据库。但是当我输入像 "Jack&Jones" 这样的文本时,特殊字符会转换为 HTML 特殊字符(此处,& 变为“&
”)。
此数据库中插入的数据稍后可用于使用模板生成 Word 文档,但这些 HTML 个字符被读取错误,生成的文件完全混乱。
我试图通过确保我的所有页面都使用 <meta charset="UTF-8">
标记并使用 header("Content-Type: text/html; charset=utf-8");
来确保数据在整个过程中保持 UTF-8 编码来解决问题,但是它没用。
所以我的问题是:如何确保我的表单、我的数据库和我的word文档之间的编码一致性?
你可以使用
htmlspecialchars($_REQUEST['your_field'], ENT_QUOTES)
用于文本解码
你可以试试这个对你有帮助: 对于解码文本:
htmlspecialchars("Jack&Jones", ENT_QUOTES);
对于如下所示的文本解码,您可以使用以下内容:
<?php
$str = "This is some <b>bold</b> text.";
echo htmlspecialchars_decode($str);
?>