Zum Beispiel
$data = 'Baidu�Tencent,Alibaba';
$data1 // ist eine Variable. Wenn es gedruckt wird, ist es „Baidu�Tencent, Alibaba“
var_dump($data);
var_dump($data1);
Druckergebnisse:
$data: string(24) „Baidu�Tencent, Alibaba“
$data1:string(22) „Baidu�Tencent, Alibaba“
$keywordsData = json_encode($data, JSON_UNESCAPED_UNICODE);
$keywordsData1 = json_encode($data1, JSON_UNESCAPED_UNICODE);
var_dump($keywordsData);
var_dump($keywordsData1);
Druckergebnisse:
keywordsData:string(26) „“Baidu�Tencent, Alibaba““
keywordsData1:bool(false)
Warum ist das so? Ich möchte die Variable direkt abrufen, aber jetzt stoße ich auf dieses Problem, bitte antworten Sie, danke
两个变量不一样,虽然都是字符串,但是长度一个24,一个22,第二个很明显不是UTF8编码,
json_encode
当然会错误。你可以先检测下字符串编码,
mb_detect_encoding
,然后再转成UTF8,mb_convert_encoding
。