andrisp Posted October 12, 2006 Report Share Posted October 12, 2006 Piem: echo json_encode(array('test'=>utf8_encode('āšķū'))); atgriež: {"test":"\u00c4\u0081\u00c5\u00a1\u00c4\u00b7\u00c5\u00ab"} Kāpēc tā ? Pēc specifikācijas manuprāt tā nevajadzētu būt. Link to comment Share on other sites More sharing options...
Kaitnieks Posted October 12, 2006 Report Share Posted October 12, 2006 Hm, nu izskatās, ka tas tāpēc, ka tev source fails saglabāts utf-8 kodējumā, tāpēc divreiz vairāk sanāca nekā gaidīji. Link to comment Share on other sites More sharing options...
andrisp Posted October 12, 2006 Author Report Share Posted October 12, 2006 Pieglabāju kā ansi, bet tāpat atgriež hex, bet nevajadzētu manuprāt. {"test":"\u00e2\u00f0\u00ed\u00fb"} Link to comment Share on other sites More sharing options...
andrisp Posted October 12, 2006 Author Report Share Posted October 12, 2006 (edited) Spriežot pēc http://www.ietf.org/rfc/rfc4627.txt, tomēr tas ir pēc specifikācijas: If the character is in the BasicMultilingual Plane (U+0000 through U+FFFF), then it may be represented as a six-character sequence: a reverse solidus, followed by the lowercase letter u, followed by four hexadecimal digits that encode the character's code point. Bet kā, lai šos hex skaitļus javascriptā pārvērš atpakaļ par 'normāliem' simboliem ? Bet varbūt tomēr es varētu serializētājā stringā \uXXXX vērtības konvertēt uz attiecīgajiem utf8 chariem jau php pusē ? Edited October 12, 2006 by andrisp Link to comment Share on other sites More sharing options...
GedroX Posted October 12, 2006 Report Share Posted October 12, 2006 Nevajadzētu būt problēmām. Viņš JavaScript-ā attēlojas kā \uNNNN, bet pie izvades tas attēlosies kā normāls simbols. Link to comment Share on other sites More sharing options...
andrisp Posted October 12, 2006 Author Report Share Posted October 12, 2006 Popup logā neattēlojas. Link to comment Share on other sites More sharing options...
GedroX Posted October 12, 2006 Report Share Posted October 12, 2006 Izmanto citu json encoder-u. Piemēram Zend. Link to comment Share on other sites More sharing options...
andrisp Posted October 12, 2006 Author Report Share Posted October 12, 2006 Tikko pamēģināju šādu - http://mike.teczno.com/json.html. Arī tas pats. To zend encoderi nemāku atrast/izmantot. Jā, kā jau tas vienmēr notiek. Atklāju, ka popapi nerāda latviešu simbolus, jo bija/ir problēma ar charsetiem, kas nāk no datubāzes. Itkā arī utf-8, bet kaut kas nesader. Link to comment Share on other sites More sharing options...
Recommended Posts