我正在成功地使用最新的树脂jar (来自http://www.caucho.com/download/),允许我在Grails应用程序中使用遗留的PHP代码。除了非ASCII字符集之外,一切都呈现得很好。
这些字符显示为问号,看起来如下:?。
我尝试过无数的解决方案:
从将php.ini设置为utf8,到确保extension=php_mbstring.dll包含在php.ini中。我还确保将MySQL数据库配置为执行utf-8操作。存储在数据库中的字符在phpMyAdmin中正确显示。
另外,我还可以做一个die("BLAH"),其中BLAH是非ASCII文本,它将正确地输出到浏览器。我的浏览器在所有页面上显示内容标题utf-8。
另一个缺点是,我能够获取运行在Grails中的PHP代码基,并在相同的机器上的WAMP服务器中运行它,连接到相同的MySQL数据库,并且它能够很好地输出非ASCII字符。
我的感觉是,这是一个从MySQL到运行在Grails中的PHP的数据传输问题(记住,它从MySQL到运行在WAMP中的同一个PHP都是有效的)。在这两种情况下,我甚至在运行查询之前执行mysql_query("SET NAMES 'utf8'")。
我也尝试过使用WAMP php.ini文件并在Grails中使用它,Grails仍然不会播放nice...Part,我认为Grails中的PHP没有读取php.ini文件,而是回到了一些默认的php.ini (我不知道)。
例如,如果我将Grails php.ini文件变成一个空文件,Grails仍然可以很好地启动,并且可以呈现php页面。但是,如果我将php.ini设置为垃圾文本,如"asdfasdf",Grails不会让我相信它看到的是start...so .
更多信息:
我试过所有我在网上找到的东西,但没有运气.谢谢你的帮忙!
发布于 2013-03-12 00:49:00
Quercus的下一个版本(4.0.36)解决了MySQL编码中长期存在的问题。请参见:
http://forum.caucho.com/showthread.php?p=36255#post36255
https://stackoverflow.com/questions/15233439
复制相似问题