0

最新のレジンジャー( http://www.caucho.com/download/から)を正常に使用して、GrailsWebアプリケーション内でレガシーPHPコードを利用できるようにしています。非ASCII文字セットを除いて、すべてが優れたレンダリングになります。

これらの文字は疑問符として表示され、次のようになります。 ???? ?? ???

私は多くの解決策を試しました:

php.iniをutf8に設定することから、php.iniに含まれていることを確認することまでextension=php_mbstring.dll。また、MySQLデータベースがutf-8を実行するように構成されていることを確認しました。データベースに保存されている文字は、phpMyAdminに正しく表示されます。
また、die("BLAH")BLAH非ASCIIテキストである場合、ブラウザに正しく出力されます。私のブラウザは、すべてのページにコンテンツヘッダーutf-8を表示します。

もう1つのキッカーは、Grails内で実行されているPHPコードベースを、同じマシンのWAMPサーバー内で実行し、同じMySQLデータベースに接続して、非ASCII文字を適切に出力できることです

私の感じでは、これはMySQLからGrailsで実行されているPHPへのデータ転送の問題です(MySQLからWAMPで実行されている同じPHPへのデータ転送の問題であることを忘れないでください)。どちらの場合もmysql_query("SET NAMES 'utf8'")、クエリを実行する前に実行しています。

また、WAMP php.iniファイルを取得してGrailsで使用しようとしましたが、Grails PHPはまだうまく機能しません...私の一部は、GrailsのPHPがphp.iniファイルを読み取っていないと思います。いくつかのデフォルトのphp.ini(私は知りません)にフォールバックしています。
たとえば、Grails php.iniファイルを空のファイルにした場合でも、Grailsは正常に起動し、phpページをレンダリングできます。しかし、php.iniを「asdfasdf」のようなガベージテキストに設定すると、Grailsが起動しなくなります...そのため、php.iniが表示されていると思います...

追加情報:

  • MySQLバージョン:5.0.22
  • Grails(resin / Quercus)のPHPバージョン:5.3.2
  • WAMPのPHPバージョン:5.1.4
  • Grailsバージョン2.2

私はオンラインで見つけたすべてを試しましたが、運がありません...あなたの助けに感謝します!

4

1 に答える 1

1

Quercusの次のリリース(4.0.36)は、MySQLエンコーディングに関する長年の問題を修正します。見る:

http://forum.caucho.com/showthread.php?p=36255#post36255

于 2013-03-12T00:49:00.720 に答える