2010-04-14 4 views
0

J'utilise Zend Framework et j'ai un problème avec JSON et UTF-8.Zend Framework et caractères UTF-8 (æøå)

Sortie

\u00c3\u00ad\u00c4\u008d 
Ã­Ä 

J'utilise ...

JavaScript (jQuery)

  • contentType : "application/json; charset=utf-8",
  • dataType : "json"

Zend Framework

  • $view->setEncoding('UTF-8');
  • $view->headMeta()->appendHttpEquiv('Content-Type', 'text/html;charset=utf-8');
  • header('Content-Type: application/json; charset=utf-8');
  • utf8_encode();
  • Zend_Json::encode

Database

  • resources.db.params.charset = "utf8"
  • resources.db.params.driver_options.1002 = "SET NAMES utf8"
  • resources.db.isDefaultTableAdapter = true

Collation

utf8_unicode_ci

Type de

MyISAM

serveur

  • version PHP 5.2.6

Qu'est-ce que je fait de mal? Merci pour votre réponse!

Répondre

1

utf8_encode();

Si vous avez UTF-8 chaînes de votre base de données et UTF-8 chaînes de votre navigateur, vous n'avez pas besoin de utf8_encode plus. Vous avez déjà des chaînes UTF-8; appeler à nouveau cette fonction vous donnera la représentation UTF-8 de ce que vous auriez si vous lisiez UTF-8 octets comme ISO-8859-1 par erreur.

Transmettez vos cordes UTF-8 intactes directement à l'encodeur JSON.

+0

Great! Ça marche! Merci beaucoup! –

0

Je pense que ce question est d'une façon liée à la vôtre mon problème était quand coder un [arabe, l'hébreu ou que vous pouvez voir chinois] tours que la notation unicode compris par javascript/ECMAScript comme ce que vous avez vu

J'espère que vous expliquer dans les détails

Questions connexes