You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

PHP多维数组转JSON对象如何去除外层数字索引

解决方案

你得到带外层数字索引的结果,核心原因是使用了JSON_FORCE_OBJECT参数,该参数会强制将PHP的索引数组转换为JSON对象,自动生成数字键作为属性名。

你提到的目标格式{{"participant_name":"John"},{"participant_name":"Jane"}}本身不符合标准JSON规范,标准多对象集合的JSON格式外层使用[]包裹,如果你是笔误想要标准JSON数组,直接去掉JSON_FORCE_OBJECT参数即可:

$participantsJson = json_encode(array_values($participants));

输出结果为:

[{"participant_name":"John"},{"participant_name":"Jane"}]

如果你确实需要外层使用{}包裹的非标准格式,可以手动拼接字符串实现:

$participantsJson = '{' . implode(',', array_map(function($item) {
    return json_encode($item);
}, $participants)) . '}';

注意:手动拼接得到的非标准格式无法被常规JSON解析器识别,非特殊场景不推荐使用。


内容的提问来源于stack exchange,提问作者Jozef Jezik

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.28 07:54:07