$data = '百度、テンセント、アリババ';
$data1 // これは変数です。印刷すると、'Baidu�Tencent, Alibaba'
となります。var_dump($data);
var_dump($data1);
印刷結果:
$data1:string(22) "Baidu�Tencent, Alibaba"
$keywordsData = json_encode($data, JSON_UNESCAPED_UNICODE);
var_dump($keywordsData);
var_dump($keywordsData1);
印刷結果:
keywordsData1:bool(false)
これはなぜですか?変数を直接取得したいのですが、この問題が発生しました。答えてください。ありがとうございます
習慣沉默2017-05-31 10:35:23
2 つの変数は異なりますが、どちらも文字列ですが、1 つは長さ 24、もう 1 つは 22 です。2 番目の変数は明らかに UTF8 でエンコードされていません。json_encode
もちろん、それは間違っています。
最初に文字列エンコーディングを確認できます mb_detect_encoding
,然后再转成UTF8,mb_convert_encoding
。