私のデータベースには、(İstanbul、Yeşilköy、Atatürkなどの)多くの特殊文字があります。json_encodeでの特殊文字の扱い
私はデータベースから直接これらのデータをすべてフェッチします。データは元のままですが、json_encode()を使用してこれらのデータをJSONに変換すると問題が発生します。
のようないくつかの奇妙な文字に変換し、これらすべてのデータを符号化した後?stanbul、バク?rköy...
しかし、私は(json_encode)をコードする前にした元の文字列を必要とする(json_decodeを使用して)decodeing後
。問題を解決するためにウェブ上で提供される多くのソリューションを試しましたが、いずれも私の場合は完全に機能していません。
いくつかのソリューションは、私が
- $アイテム=はutf8_encode($アイテム)をtried-。
- $ item = html_entity_decode($ item、ENT_COMPAT、 'UTF-8');
- http://www.php.net/manual/en/function.json-encode.php
- は、私はまた、少なくとも元の文字列を取得することはできない場合はいずれもあってはならない(https://github.com/neitanod/forceutf8)
githubの上で利用可能なライブラリを試してみましたか? (これらのものを取り除く)。
問題を解決するために私に何か提案してください。
//あなたのmysqlクエリにcharsetを設定してください ** mysqli_query($ conn、 "SET CHARSET utf8")** – Sharif
私はヘッダー( 'Content-Type:application/json charset = utf-8')にヘッダーを設定しています;私のデータはデータベースから取得した後は問題ありませんが、エンコード後に変更されています –