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

PHP如何无需循环 对数组内stdClass对象的指定属性执行json_encode

无循环实现方案

可以使用PHP内置的array_map高阶函数完成需求,不需要手动编写循环逻辑,且只会保留你指定的key2、key3两个属性,不受对象其他未知属性影响:

// PHP 7.4+ 支持箭头函数的版本写法
$jsonResult = json_encode(array_map(fn($obj) => [
    'key2' => $obj->key2,
    'key3' => $obj->key3
], $myArray));

如果需要保留输出结果为对象格式而非数组格式,可调整回调返回值:

$jsonResult = json_encode(array_map(fn($obj) => (object)[
    'key2' => $obj->key2,
    'key3' => $obj->key3
], $myArray));

低版本PHP(7.4以下)可替换为匿名函数写法:

$jsonResult = json_encode(array_map(function($obj) {
    return [
        'key2' => $obj->key2,
        'key3' => $obj->key3
    ];
}, $myArray));

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.29 13:57:05