0

在 Zend Form 中,如何在文本字段中设置特殊字符?字符在数据库中保存为 & aacute; 等等。在我的 application.ini 中,我使用 UTF 设置了数据库连接,如下所示:

resources.db.params.charset = "utf8"

这些表设置为 utf8_general_ci。在标题中:

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

下面的一个例子:

$form->getElement('title')->setValue($Row['title']);

当我打开网页时,它显示 & aacute; 就像在数据库中一样。

4

1 回答 1

1

这不是真正的字符集问题。ZF 转义显示在表单字段中的数据,但您正在向表单字段中提供已经转义的值,因此转义发生了两次。这意味着&符号被更改为&amp;这就是为什么转义值就是您所看到的。

如果可以的话,我建议存储未转义的数据(因此将 á 存储在数据库中,因为您使用的是 UTF-8,这会很好)。那你就不会有这个问题了。或者,您可以禁用对单个表单元素的转义。

于 2013-05-28T12:02:58.907 回答