Bug #73908 [Com]: Invalid UTF-8 encoding
| From: | unhold1799 at gmail dot com | Date: | Sat, 11 Feb 2017 18:09:56 +0000 |
| Subject: | Bug #73908 [Com]: Invalid UTF-8 encoding | ||
| References: | 1 | Groups: | php.bugs |
| Request: | Send a blank email to php-bugs+get-207269@lists.php.net to get a copy of this message | ||
Edit report at https://bugs.php.net/bug.php?id=73908&edit=1
ID: 73908
Comment by: unhold1799 at gmail dot com
Reported by: bugsphpnet at atis dot id dot lv
Summary: Invalid UTF-8 encoding
Status: Not a bug
Type: Bug
Package: XMLRPC-EPI related
Operating System: Ubuntu 16.04
PHP Version: 7.1.0
Assigned To: cmb
Block user comment: N
Private report: N
New Comment:
Currently I also have problems with the utf8 function.
Since the last update of php, utf8 encoded strings are no longer output correctly.
example:
Testaccount name "tdstuser1" outputs apcu and session t�stuser1 (t?stuser1)
String containing the umlaute included and before the update urgently had to be encoded, must now no
longer be coded!
Previous Comments:
------------------------------------------------------------------------
[2017-01-17 15:34:11] cmb@php.net
Thanks!
------------------------------------------------------------------------
[2017-01-17 15:21:05] bugsphpnet at atis dot id dot lv
Could not reproduce on vanilla php7, submitted downstream:
https://bugs.launchpad.net/ubuntu/+source/php7.0/+bug/1657158
------------------------------------------------------------------------
[2017-01-15 13:37:12] cmb@php.net
I'm not able to reproduce this with builds of the php.net
distribution, so this *might* be a downstream issue. Please check
whether it also works for you with such a build.
------------------------------------------------------------------------
[2017-01-10 14:56:34] bugsphpnet at atis dot id dot lv
For anyone stumbling upon this, a quick and ugly workaround:
/* Original call */
$response = xmlrpc_server_call_method($srv, $request, NULL,
array('encoding'=>'UTF-8',
'verbosity'=>'no_white_space'));
$response =
str_replace(array('',''),array('Ð','Ñ'),$response);
------------------------------------------------------------------------
[2017-01-10 14:54:05] bugsphpnet at atis dot id dot lv
Description:
------------
---
From manual page: http://www.php.net/function.xmlrpc-encode
---
UTF-8 characters are incorrectly encoded. 208 character code turns into 28, and 209 turns into 29,
etc
PHP 5.3.10 did not had this problem.
Problem has been reproduced on versions:
PHP 7.1.0-5+deb.sury.org~xenial+1 (cli) ( NTS )
PHP 7.0.8-0ubuntu0.16.04.3 (cli) ( NTS )
Test script:
---------------
<?php
print_r(xmlrpc_encode('ÐоÑква'));
Expected result:
----------------
<?xml version="1.0"
encoding="utf-8"?><params><param><value><string>Москва</string></value></param></params>
Actual result:
--------------
<?xml version="1.0"
encoding="utf-8"?><params><param><value>
<string>œ¾º²°</string></value></param></params>
------------------------------------------------------------------------
--
Edit this bug report at https://bugs.php.net/bug.php?id=73908&edit=1