项目

一般

简介

错误 #2964

网管2.1.T17—0313版本测试,资源监控数据显示异常

杨 凯6 个月 之前添加. 更新于 6 个月 之前.

状态:
已解决
优先级:
普通
指派给:
开始日期:
2025-03-13
计划完成日期:
% 完成:

0%

预期时间:

描述

网管2.1.T17——0313版本测试,资源监控数据显示异常

历史记录

#1

杨 凯 更新于 6 个月 之前

  • 指派给马 党旗 变更为 薛 泽庆
#2

薛 泽庆 更新于 6 个月 之前

  • 状态新建 变更为 转测试
  • 指派给薛 泽庆 变更为 马 党旗

造成此问题的原因是php关联数组如果下标无序,那么js收到的就是一个对象,导致格式错误
现在增强了代码的健壮性:
public function normalizeArray(array $res): array {
if (empty($res)) {
return [];
}

// 获取所有键并尝试转换为整数
$keys = array_keys($res);
$intKeys = [];
foreach ($keys as $key) {
// 检查是否为数字或字符串数
if (is_int($key) || (is_string($key) && ctype_digit($key))) {
$intKeys[] = (int)$key;
} else {
ksort($res); // 可选:是否对键排序?
return $res;
}
}
// 检查键连续
sort($intKeys); // 先排序键
$expectedSequence = range(0, count($intKeys) - 1);
if ($intKeys === $expectedSequence) {
ksort($res); 
return array_values($res); // 重新生成索引
} else {
ksort($res);
return $res;
}
}

不依赖redis中的顺序,也能生成索引数组

#3

马 党旗 更新于 6 个月 之前

  • 指派给马 党旗 变更为 杨 凯
#4

杨 凯 更新于 6 个月 之前

  • 状态转测试 变更为 已解决

该问题已验证解决YZMM2.1.0Pre1T17——0314版本

导出 Atom PDF