浏览器没收到返回,后端也没报错,php的json_encode问题bug

今天网站遇到个问题,后端返回异常,但是浏览器状态码200,但是看不到结果。经过排查发现,我们在返回结果的时候使用了json_encode返回给前端,结果里面的字符编码异常,导致json_encode异常,但是php没有报错,也没有错误日志,经过一步步调试,最终找到这个问题,特此记录。


修复代码如下:

php 复制代码
<?php
$v = 'PHNjcmlwdCBsYW5nPY2r2rHK4nJpcHRcPg==';
$slices = explode(',', $v);

$matchdata = array_map('base64_decode', $slices);
$json_encode = json_encode(mb_convert_encoding($matchdata, 'UTF-8'));
if ($json_encode === false) {
    echo "JSON encoding failed. Error: " . json_last_error_msg();
} else {
    echo $json_encode;
}
相关推荐
梁辰兴32 分钟前
计算机网络基础:TCP 的拥塞控制
tcp/ip·计算机网络·php·tcp·拥塞控制·计算机网络基础·梁辰兴
小高Baby@3 小时前
JSON、bind、form
数据结构·json
阿蒙Amon5 小时前
TypeScript学习-第11章:配置文件(tsconfig.json)
学习·typescript·json
Vect__7 小时前
TCP Socket编程详解
网络协议·tcp/ip·php
REDcker7 小时前
TCP 拥塞控制算法详解:CUBIC、BBR 及传统算法
tcp/ip·算法·php
一起养小猫8 小时前
Flutter for OpenHarmony 进阶:Timer组件与倒计时系统深度解析
android·网络·笔记·flutter·json·harmonyos
小学导航员9 小时前
VMWARE虚拟机上不了网络
服务器·网络·php
女王大人万岁10 小时前
Go语言JSON标准库(encoding/json):功能解析与实战指南
服务器·开发语言·后端·golang·json
上海合宙LuatOS10 小时前
LuatOS ——fota 升级教程
开发语言·人工智能·单片机·嵌入式硬件·物联网·php·硬件工程
AI量化价值投资入门到精通10 小时前
数据清洗:大数据领域的必备技能
大数据·开发语言·ai·php