ホームページ >php教程 >PHP开发 >絵文字プッシュの文字化けの解決策

絵文字プッシュの文字化けの解決策

巴扎黑
巴扎黑オリジナル
2016-11-07 11:36:102410ブラウズ

プッシュコンテンツに絵文字表現が含まれている場合は、次の変更を行う必要があります
1 Mysql はバージョン 5.5.3 以降を使用する必要があります (アップグレードできない場合は、base64 で保存し、プッシュ時にトランスコードしてください)
2テーブルを作成し、コンテンツ テーブルのフィールドを utf8mb4_unicode_ci エンコード形式にプッシュします (システム my.cnf を変更する必要はなく、mysql を再起動する必要もありません)

apnsphp を使用してプッシュする場合、絵文字表現が ?: になるという問題がまだ発生する可能性があります。 Message.php の getPayload メソッドを見つけて、変換トランスコード判定に「false &&」を追加して実行を無効にしてください。このコードでは一部の絵文字表現が切り捨てられるためです。


Java コード

if (false && !define('JSON_UNESCAPED_UNICODE') && function_exists('mb_convert_encoding')) {

$sJSON = preg_replace_callback(

'~\\u([0 -9a-f] {4})〜i '、

'、

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。