繁体   English   中英

以某种形式显示西班牙语字符

[英]Show spanish characters in a form

我有一个表单,在文本区域中,我想显示一些具有一些西班牙字符但编码为html的文本。 问题在于,它显示的是html代码而不是西班牙字符。 我正在使用htmlentities在表单中显示它。 我要显示的代码是:

<?php echo htmlentities($string, ENT_QUOTES, "UTF-8") ?>

任何想法还是我不应该以某种形式使用htmlentities? 谢谢!

编辑$string = 'á'

当我只执行<?php echo $string ;?>我得到á如果我做了<?php echo htmlentities($string, ENT_QUOTES, "UTF-8") ?>我会得到&aacute;

我很混乱!

如果我对您的理解正确,则需要使用...

<meta charset="utf-8">

在页面标题中,然后...

<?php echo html_entity_decode($string, ENT_QUOTES); ?>

这会将您的HTML实体转换回其正确的字符

您可以尝试在文件顶部显式添加内容类型,如下所示

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

如果已经将其编码为html,则需要立即对其进行解码。.您可以使用html_entity_decode html_entity_decode($string);

您要在表单中回显的字符串应为&aacute; 从数据库中,而不是返回á

$string = '&aacute;'; // your string as fetched from database
echo html_entity_decode($string);// this will display á in the textarea

在保存到数据库之前,您需要

htmlentities($_POST['txtAreaName'], ENT_QUOTES, "UTF-8"); // return `&aacute;`

您可能正在寻找htmlspecialchars。

echo htmlspecialchars('<á>', ENT_COMPAT | ENT_HTML5, "UTF-8");

输出&lt;á&gt;

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM