浏览器没收到返回,后端也没报错,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;
}
相关推荐
xinxinhenmeihao1 小时前
有哪些原因会让爬虫代理IP失效?
爬虫·tcp/ip·php
晓13132 小时前
第一章:Redis 安装与入门
redis·json·nosql
m0_748240444 小时前
Laravel5.6核心更新全解析
开发语言·php
运维行者_5 小时前
OpManager 对接 ERP 避坑指南,网络自动化提升数据同步效率
运维·服务器·开发语言·网络·microsoft·网络安全·php
CHU7290355 小时前
安心陪伴,便捷就医:陪诊代办小程序的温暖设计
前端·小程序·php
CHU7290355 小时前
线上扭蛋机拆盒小程序前端功能版块解析
前端·小程序·php
AI视觉网奇7 小时前
ue 5.5 c++ mqtt 订阅/发布 json
网络·c++·json
cat2bug7 小时前
介绍一下Cat2Bug-App如何连接自己的Bug平台
bug
秋天枫叶357 小时前
【k8s集群Docker + cri-dockerd】服务器重启或关机后 apiserver/controller/scheduler 无法自动恢复
linux·运维·服务器·容器·kubernetes·bug
ShoreKiten8 小时前
ctfshow-web262
web安全·php