我在 textarea 上显示此字符时遇到问题:
…
我的网页(包括元标题和文件编码)编码采用UTF-8格式。数据库,表和相应字段也是UTF-8,因为它是默认编码。我正在处理欧洲文本。
我读取保存在数据库中的文本并将其显示在textarea上。
但是这个字符(只有这个字符)会一直显示为:
&
如何在 textarea 中正确显示此字符?
我应该将我的页面/数据库的编码更改为UTF-16或类似的东西吗?我应该使用预标签吗?我应该使用PHP(我已经是!)调用htmlentities()之类的函数来显示页面吗?
如果我错过了一些明显的东西,我会事先道歉。
注意#1:请注意,角色是" ..." (省略号)和NOT" ..." (三个点);
注意#2:我正在使用webmin管理数据库并正确显示数据。但有趣的是,当我编辑行时,数据也显示为" & "来自webmin的textarea。
注意#3:我做了一个print_r()数据显示在textarea中。当我检查HTML时,一切都很好,但符号是" ..."正在显示为
& amp ;
(所有在一起。我必须将字符分开才能在这里正确显示)
这相当于"&"。我正在使用
htmlspecialchars($string_for_textarea, ENT_QUOTES, 'UTF-8');
要生成HTML ...我目前正试图了解为什么这个函数可能会弄乱角色......
答案 0 :(得分:0)
您只是从某处复制并将其粘贴到源中吗?如果是这样, 我建议你使用省略号的ascii代码如下
<textarea>…</textarea>
答案 1 :(得分:0)
解决了 - 问题出在其他地方。
textarea中显示的数据实际上是使用PHP Excel Reader库从电子表格导入的。
出于某种原因,在导入值的PHP脚本中,如果一个单元格有这个符号,它的读取方式与没有它的单元格不同。
我改为PHPExcel(另一个库)并设法正确导入这些值。
感谢您的所有反馈和建议。
答案 2 :(得分:0)
echo htmlentities($ string,ENT_COMPAT,&#34; UTF-8&#34;);
使用此