PHP - json_encode (строка, JSON_UNESCAPED_UNICODE) не экранирует чешские символы
Я выбираю некоторые данные из базы данных и кодирую их как json, но у меня проблема с чешскими знаками, такими как
A, I, R, C, Z ...
Мой файл в кодировке utf-8, моя база данных также в кодировке utf-8, я также установил заголовок для кодировки utf-8. Что еще я должен сделать, пожалуйста?
Мой код:
header('Content-Type: text/html; charset=utf-8');
while($tmprow = mysqli_fetch_array($result)) {
$row['user'] = mb_convert_encoding($tmprow['user'], "UTF-8", "auto");
$row['package'] = mb_convert_encoding($tmprow['package'], "UTF-8", "auto");
$row['url'] = mb_convert_encoding($tmprow['url'], "UTF-8", "auto");
$row['rating'] = mb_convert_encoding($tmprow['rating'], "UTF-8", "auto");
array_push($response, $row);
}
$json = json_encode($response, JSON_UNESCAPED_UNICODE);
if(!$json) {
echo "error";
}
и часть печатного JSON:"package":"zv???tkanalouce"
РЕДАКТИРОВАТЬ: Без функции mb_convert_encoding () напечатанная строка пуста и выводится «error».