I'm calling json_encode() on data that comes from a MySQL database with utf8_general_ci collation. The problem is that some rows have weird data which I can't clean. For example symbol , so once it reaches json_encode(), it fails with json_encode(): Invalid UTF-8 sequence in argument.

我试过utf8_encode()utf8_decode(),即使是mb_check_encoding()也是如此,但它一直在打通,造成了很大的 destruct .

Running PHP 5.3.10 on Mac. So the question is - how can I clean up invalid utf8 symbols, keeping the rest of data, so that json_encoding() would work?

使现代化下面是一种复制它的方法:

echo json_encode(pack("H*" ,'c32e'));

推荐答案

似乎符号是Å,但由于数据由不应该公开的姓氏组成,所以只显示了第一个字母,而且只显示了$lastname[0],这对于多字节字符串来说是错误的,并导致了整个麻烦.将其改为mb_substr($lastname, 0, 1)-效果很好.

Json相关问答推荐

从Razor Pages的AJAX Json呈现DataTables问题.Net GET

使用单元和非单元版本反序列化Rust中的枚举,而无需编写自定义反序列化程序

Flutter -控制器问题-JSON API

集成wix.comstore API|变音符号问题

递归解码嵌套列表(具有任意深度的列表列表)

如何使用jolt规范将一个对象添加到另一个对象中并删除该对象

如何使用SQLite Trigger将JSON对象数组转换为新记录?

JOLT JSON 将值从一对多转换为一对一

缺少所需的请求正文内容:org.springframework.web.method.HandlerMethod$HandlerMethodParameter

如何使用 jackson 反序列化为 Kotlin 集合

Qt使用QJsonDocument、QJsonObject、QJsonArray解析JSON

使用 Spring 和 JsonTypeInfo 注释将 JSON 反序列化为多态对象模型

IE中Json响应下载(7~10)

Jackson:忽略 Json 配置值

使用 Python 3 读取 JSON 文件

在android中读取Json数组

在 JSON.NET 中序列化派生类时的字段顺序

如何使用 Javascript 将数据写入 JSON 文件

雅虎财经全币种报价 API 文档

Java HashMap 与 JSONObject