浏览器没收到返回,后端也没报错,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;
}
相关推荐
筱宇***7 小时前
Mac的web服务器
mysql·nginx·macos·php
iangyu11 小时前
【windows server脚本每天从网络盘复制到本地】
开发语言·windows·php
YUJIANYUE12 小时前
PHP黑白胶卷底片图转彩图功能 V2025.05.15
php
为自己_带盐13 小时前
浅聊一下数据库的索引优化
开发语言·数据库·php
Chandler2414 小时前
Go语言:json 作用和语法
开发语言·golang·json
Hfc.1 天前
docker-daemon.json
docker·容器·json
Lucky小小吴1 天前
木马查杀篇—Opcode提取
php·opcode·木马查杀
gxn_mmf1 天前
典籍知识问答重新生成和消息修改Bug修改
前端·bug
邪恶的贝利亚1 天前
《ffplay 读线程与解码线程分析:从初始化到 seek 操作,对比视频与音频解码的差异》
ffmpeg·php·音视频
廖圣平1 天前
美团核销 第三方接口供应商 (含接口文档)
开发语言·数据库·php