3

申し訳ありませんが、これは狂気のように聞こえるかもしれません。したがって、主な問題は、Web サービスからのデータが json_encoded の場合、ほとんどの絵文字がアプリで正方形として表示されることです。すべてではありませんが、ほとんどです。これをWebサービス側で修正しようとしています。

json_encode を使用しない場合、代わりに次のようにすることがわかりました。

$array .= '{"text":"emoji"}
echo = '[' . $array . ']';

基本的に、json がエンコードされているかのようにエコーします。絵文字はアプリに正しく表示されますが、エンコードされていないため、他のことは正しく機能します。mb_detect_encoding を使用してわかったことは、絵文字を含むテキストは UTF-8 であり、絵文字を含まないテキストは ASCII であるということです。だから私がしたことは、UTF-8ではないかどうか、文字列をjson_encodeだけではないかどうかを確認できることを確認することです。UTF-8 の場合は、何もしません。これは、返されるすべてのデータの 95% で機能します。以下のようなもの。

$encode = mb_detect_encoding($theMemo);
if($encode != 'UTF-8'){
$theMemo = json_encode($theMemo);
}

$array .= '{"text":"' . $theMemo . '"}
echo = '[' . $array . ']';

私が抱えている問題は、テキストが「Floyd Mayweatherâ€@FloydMayweather #TheMoneyTeam」のようなもので、Unicode が含まれている場合がありますが、絵文字ではないため、正しく表示されるように json_encode する必要があります。 .

基本的に、絵文字を含まないものをjson_encodeする方法を見つけるか、より適切な方法を見つける必要があります。私がやっていることは奇妙に思えるかもしれませんが、たとえそれがハックのように見えても、解決策を見つけようとしているだけです.

4

0 に答える 0