Обработка неверных символов UTF-8 в кодировке PHP JSON
При использовании json_encode() для сериализации массива, содержащего русские символы, вы можете столкнуться с ошибка, связанная с неверными символами UTF-8. Чтобы устранить эту проблему, выполните следующие действия:
Шаг 1. Определите кодировку символов
Используйте mb_detect_encoding(), чтобы определить кодировку поля, содержащего русские символы. Убедитесь, что это действительно UTF-8, как указано в вашем примере.
Шаг 2. Удаление символов, отличных от UTF-8
Хотя поле может быть в основном закодировано в UTF-8 он все равно может содержать символы, отличные от UTF-8. Чтобы удалить их, используйте функцию mb_convert_encoding():
$data['name'] = mb_convert_encoding($data['name'], 'UTF-8', 'UTF-8');
Это действие заменит любые символы, отличные от UTF-8, их эквивалентными представлениями-заполнителями, гарантируя, что строка остается допустимой для кодировки JSON.
Шаг 3. Сериализация с кодировкой JSON
После удаления символов, отличных от UTF-8, вы можете успешно сериализовать данные с помощью json_encode(). Полученный JSON будет действительным и будет содержать правильное представление русских символов.
Отказ от ответственности: Все предоставленные ресурсы частично взяты из Интернета. В случае нарушения ваших авторских прав или других прав и интересов, пожалуйста, объясните подробные причины и предоставьте доказательства авторских прав или прав и интересов, а затем отправьте их по электронной почте: [email protected]. Мы сделаем это за вас как можно скорее.
Copyright© 2022 湘ICP备2022001581号-3