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».

Ответы на вопрос(1)

Ваш ответ на вопрос