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

Lumen PHP如何在JSON返回中重命名字段?有无更简便方法?

Laravel字段重命名返回JSON的简化方案

有两种比写getter/setter更简单的方案,按需选择:

  • 查询阶段直接给字段起别名
    不用修改模型代码,直接在查询语句里把xx重命名为yy,返回的JSON会直接包含yy字段:
$table = MyTable::select('id', 'name', 'xx as yy')
    ->where('id', $id)
    ->first();
return response()->json($table, 200);

这种方式最直接,零模型改动,适合单次或少量接口使用。

  • 返回前手动调整数组结构
    如果不想修改查询逻辑,可以把模型转为数组后再调整字段名:
$table = MyTable::select('table.*')->where('id', $id)->first();
$responseData = $table->toArray();
// 将xx的值赋值给yy
$responseData['yy'] = $responseData['xx'];
// 删除原xx字段
unset($responseData['xx']);
return response()->json($responseData, 200);

如果是全局所有接口都需要把xx显示为yy,那还是推荐用模型访问器+隐藏字段的组合,但你要更简单的临时方案,上面两种都能快速解决问题。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.01 21:40:05