0

我正在使用 Zend_Form 子类在数据库中添加和编辑记录。布局具有 iso-8859-1 编码和字符集。表记录使用 latin1_spanish_ci 排序规则。
当记录包含重音等特殊字符时,表单输入文本元素根本不显示任何内容。如果没有特殊字符,表单输入文本元素会正确显示记录。奇怪的是,当特殊字符出现在文本输入字段之外时,它们会正确显示,例如在 Html 标题2 或段落中。

我尝试在 application.ini 中插入以下内容:

resources.db.params.charset=iso-8859-1  

但我收到一条错误消息:

SQLSTATE[42000] [1115] Unknown character set: 'iso-8859-1'  

我也尝试过以同样的方式将 db 字符集更改为 utf8。表单文本元素显示字符串,但我得到奇怪的字符而不是原始字符。

我几乎尝试了任何东西,但我还没有解决问题。使用 Zend_Form 生成的文本输入元素似乎讨厌拉丁字符。

你有同样的问题吗?

4

1 回答 1

2

我在 zf 论坛中找到了这个简单的解决方案:
将以下内容添加到_initViewbootstrap.php 中的函数中,然后忘记其他所有内容:

$view->setEncoding('iso-8859-1');
于 2010-12-27T20:33:30.853 回答