我得到一個utf8-json-String作爲post變量到我的php文件。json_decode不工作沒有utf8_encode
我的php header ist設置爲charset = utf-8,html charset = utf-8,php文件是utf8,沒有BOM。
我嘗試將json數據寫入TSQL數據庫。
如果我做
$jsonfile = $_POST['jsonfile'];
$jsonfile = utf8_decode($jsonfile);
$jsonarray = json_decode($jsonfile);
foreach($jsonarray as $value) {
// write in database
}
所有的數據被寫入到我的數據庫。不幸的是,charset刪除了德語字符(ß(ß))。
如果我這樣做只是
$jsonfile = $_POST['jsonfile'];
$jsonarray = json_decode($jsonfile);
foreach($jsonarray as $value) {
// write in database
}
php的無法通過陣列運行。
您是否在數據庫字段上設置了正確的字符集? –
如果我將json字符串複製並粘貼到php文件中並將其引用到$ jsonfile,則不帶utf8_decode的json_decode運行良好。一切都寫入數據庫。所以我查詢它是因爲DB字符集 – alex