繁体   English   中英

将特殊字符(例如中文字符)从PHP转移到android

[英]Transfer the special character (e.g. Chinese chararcter) form PHP to android

这是我将短信发送到android GCM的方式,首先我用PHP编码了汉字

$message = array("msg" => urlencode($msg));

$url = 'https://android.googleapis.com/gcm/send';
$fields = array(
            'registration_ids'  => $registrationIDs,
            'data'              => array( "message" => $message ),
            );

$headers = array(
                'Authorization: key=' . $api_key,
                'Content-Type: application/json;');

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt( $ch, CURLOPT_POST, true );
curl_setopt( $ch, CURLOPT_HTTPHEADER, $headers);
curl_setopt( $ch, CURLOPT_RETURNTRANSFER, true );
curl_setopt( $ch, CURLOPT_POSTFIELDS, json_encode( $fields ) );
$result = curl_exec($ch);
curl_close($ch);

当消息发送到android端时,符号,数字和英文均保持正常,但是中文字符不正确,如何解决? 谢谢

msg = URLDecoder.decode(intent.getStringExtra("message"), "UTF-8");

尝试将php标头字符集设置为UTF-8,看看是否可行。

我发现问题不是由php或android引起的

实际上在我的输入表单中省略了

<meta type="utf-8">

那是粗心的错误

添加到html头:

<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM